问题标签 [jsr354]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java-money - Java 的货币和货币操作 - JSR 354
我只是好奇是否有人知道 JSR 354 是否将作为任何未来 JDK 的一部分正式实现。
当我在线搜索 JDK 11 文档时 - 它看起来不像Monetary
并且MonetaryAmount
不包括类。但是 JSR 354 的实现存在于 Github 下的 jsr354-ri 下。
如果我不想遵循参考实现,这是否意味着我可以编写自己的实现?我的目的是支持其他货币,例如没有官方 ISO 认可但众所周知的人民币(离岸)CNH。
谢谢,
java - 为什么 JavaMoney 依赖项是 POM 包?
我对构建系统不是很有经验,但这让我很好奇。
大多数库使用<type>jar</type>
(默认)作为它们的依赖项,但 JavaMoney 库pom
改为使用,原因是什么?
precision - 从双重创建 FastMoney/Money 是否有任何警告?
我已经看到BigDecimal
从创建时存在问题double
。
虽然FastMoney
不使用BigDecimal
(而不是Money
),但我不确定当我从一个double
值创建它们时它们中的任何一个会如何表现。
是否从不推荐创建FastMoney
/Money
实例?double
我应该总是尝试从创建它们String
吗?
java-money - JSR354 (Java Money API) 保留为 javax.money 还是迁移到 java.money?
既然已经进行了转移投票并且 jsr354-api (Java Money API) 已设置为包含在 Java 发行版中,那么它的包会保留为 javax.money 还是转移到 java.money?
该module-info.java
文件的目的是允许将 java.money 用作别名吗?
https://github.com/JavaMoney/jsr354-api/blob/master/src/main/java/java/money/module-info.java
java - 使用 javamoney 1.3 库的 Amort 表
我想使用 javamoney 制作贷款摊销表。我想过使用 PresentValueOfAnnuityPayment,但无法在 javamoney 1.3 中找到它。有什么建议么?
编辑:我在项目中添加了这个依赖项,但仍然无法从这个https://github.com/JavaMoney/javamoney-lib/blob/master/calc/src/main/java/org/javamoney找到 PresentValueOfAnnuityPayment 或任何其他类/calc/common/PresentValueOfAnnuityPayment.java 存储库
java - MonetaryException:未加载 MonetaryAmountsSingletonSpi
问题描述
我有一个带有 gradle 依赖关系的 java 项目org.javamoney:moneta:1.3
。
我还有两个 Kubernetes 集群。我使用 docker-container 部署我的 java 应用程序。
当我在第一个Kubernetes 集群中部署我的应用程序时,一切都很好。但是当我在第二个Kubernetes 集群中部署我的应用程序(相同的 docker-container)时,会出现以下错误:
它出现在以下代码中:
软件版本
- 莫内塔:
1.3
。 - 摇篮:
6.0.1
。 - 基础泊坞窗图像:
openjdk:11.0.7-jdk-slim
. - 弹簧靴:
2.2.7.RELEASE
。 - Kubernetes(两个集群上的相同版本)
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T11:05:50Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
:. - 爪哇:
java -version openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment 18.9 (build 11.0.7+10) OpenJDK 64-Bit Server VM 18.9 (build 11.0.7+10, mixed mode)
。
我试过的
以不同的方式声明 gradle-dependency
我发现了这个问题,它给了我一个想法,尝试以某种不同的方式声明 gradle-dependency。我努力了:
implementation 'org.javamoney:moneta:1.3'
compile group: 'org.javamoney', name: 'moneta', version: '1.3', ext: 'pom'
compile 'org.javamoney:moneta:1.3'
runtimeOnly 'org.javamoney:moneta:1.3'
不幸的是,它没有给出任何积极的结果。
Moneta 的复制粘贴服务加载器配置
正如此评论中提到的,我尝试将服务加载器配置从 Moneta复制到以下项目目录:src/main/resources/META-INF/services
.
不幸的是,它没有帮助。
无弹簧初始化自定义货币
我试图只在 Main-class 中这样做,但它并没有解决问题。
问题
- 这个问题的根本原因是什么?
- 这个问题的正确解决方案是什么?
java - 验证货币代码与允许值之一匹配
我有一个 POJO,其中包含一个名为price
.
该字段的类型是javax.money.MonetaryAmount
,因此我可以从 JSR 354 验证等中受益。
我对该字段有一个约束,指定货币必须是EUR
:
如何指定货币必须是EUR
or USD
?