jsr354-ri
                                
                                
                                
                                    jsr354-ri copied to clipboard
                            
                            
                            
                        moneta-core depends on JEE8, making it unusable with JEE9
https://github.com/JavaMoney/jsr354-ri/blob/ac0afde6f37ecc8a9a30c3386b2350dbe7d37459/moneta-core/src/main/java/org/javamoney/moneta/spi/PriorityAwareServiceProvider.java#L18
depends on
https://github.com/JavaMoney/jsr354-ri/blob/ac0afde6f37ecc8a9a30c3386b2350dbe7d37459/pom.xml#L327
crashing at runtime:
java.lang.NoClassDefFoundError: javax/annotation/Priority
	at org.javamoney.moneta.spi.PriorityAwareServiceProvider.compareServices(PriorityAwareServiceProvider.java:72)
	at java.base/java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
	at java.base/java.util.TimSort.sort(TimSort.java:220)
	at java.base/java.util.Arrays.sort(Arrays.java:1307)
	at java.base/java.util.ArrayList.sort(ArrayList.java:1721)
	at org.javamoney.moneta.spi.PriorityAwareServiceProvider.loadServices(PriorityAwareServiceProvider.java:102)
	at org.javamoney.moneta.spi.PriorityAwareServiceProvider.getServices(PriorityAwareServiceProvider.java:66)
	at javax.money.spi.Bootstrap.getServices(Bootstrap.java:110)
	at org.javamoney.moneta.spi.DefaultMonetaryCurrenciesSingletonSpi.getDefaultProviderChain(DefaultMonetaryCurrenciesSingletonSpi.java:134)
	at org.javamoney.moneta.spi.DefaultMonetaryCurrenciesSingletonSpi.collectProviders(DefaultMonetaryCurrenciesSingletonSpi.java:91)
	at org.javamoney.moneta.spi.DefaultMonetaryCurrenciesSingletonSpi.getCurrencies(DefaultMonetaryCurrenciesSingletonSpi.java:45)
	at javax.money.spi.MonetaryCurrenciesSingletonSpi.getCurrency(MonetaryCurrenciesSingletonSpi.java:76)
	at javax.money.Monetary.getCurrency(Monetary.java:382)
                                    
                                    
                                    
                                
I guess we'll maintain a 1.4.x release using the old javax annotations and add a 1.5.x release of Moneta with the new Jakarta annotations and similar dependencies.
The newer dependencies have better module support, so they will also be useful in apps built using jlink, etc.
I guess we'll maintain a 1.4.x release using the old javax annotations and add a 1.5.x release of Moneta with the new Jakarta annotations and similar dependencies.
Is there any plan on when this split, or any release of 1.4.x, might happen? I saw in https://github.com/JavaMoney/javamoney-parent/issues/6 that there were some issues related to Bintray, are those blocking new releases?
Is there any way to help further with this? I submitted a PR, but I assume this is more about the 1.4.X split than simply replacing import javax. with import jakarta.
We'll check the PR thanks a lot. It needs to be reviewed by a JCP member, either myself, another Maintenance lead like @otaviojava or @msgilligan could also help if he has time.
Ok. I also thought about this change again. While it gives JEE9 compatibility, it also breaks JEE8 (probably? I did not test). Which might warrant a major change (2.X) over a feature change (1.5.X)
I'm pretty busy at the moment, but when I return to my project that uses Java Money this is something I would really like to see, so I will bookmark this for later.
Greetings! The fix has not been pushed to mvnrepository as 1.4.3. Any plans? I don't know if that is the right thing to do. We should probably change to 2.0. This blocks javaEE->jakartaEE, hibernate 5->6, etc. for moneta users. Thank you! Ram Vemuri
Until the blocker #353 is not solved appropriately, I'm afraid there won't be a 1.4.3 release.
@msgilligan is not the only one who is busy, and I was the only one who could spend a bit of time, especially fixing #374 for EMF, but #353 is more complex because with the current approach of using the old URLConnection.