[ 
https://issues.apache.org/jira/browse/MNG-7475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17535976#comment-17535976
 ] 

Tamás Cservenák commented on MNG-7475:
--------------------------------------

Okay, let's fix this in 3.8.6, and make it work. Of course, I will deprecate 
the returned setter as well, with notice, that it is about to be removed in 
3.9.x and later (so this will be only 3.8.5 change, and given 3.8.6 is last 
planned of 3.8.x line, that's it).  Still, given this is as you say 
unmaintained software, that is doing it wrong from beginning as we assessed 
here, this is the price of the decision made in past: it will not work with 
3.9.x line, nor Maven 4... We have to move forward, and we do not have 
resources nor time to make sure all (unintended) uses of classes from maven 
will work. In case of any question, there is Mailing List where we are glad to 
answer questions, and help write more durable, robust code that integrates with 
Maven in well manner.

> [REGRESSION] ModelBuilder API Change breaks ShrinkWrap: NoSuchMethodError in 
> FileProfileActivator.setPathTranslator()
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: MNG-7475
>                 URL: https://issues.apache.org/jira/browse/MNG-7475
>             Project: Maven
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 3.8.5
>         Environment: any & deterministically reproducible / proven by public 
> API docs
>            Reporter: Andreas Loew
>            Priority: Major
>
> Maven 3.8.5 breaks [Arquillian 
> ShrinkWrap|https://arquillian.org/modules/shrinkwrap-shrinkwrap] (and 
> thereby, most if not all use of Red Hat/JBoss Arquillian) by changing the 
> published public API of class 
> org.apache.maven.model.profile.activation.FileProfileActivator:
> {code:java}
> [ERROR] 
> com.dbenergie.ndm.bnb.business.NutzungsinformationenCreateOrtungsinfoTest  
> Time elapsed: 0.127 s  <<< ERROR!
> java.lang.NoSuchMethodError: 
> 'org.apache.maven.model.profile.activation.FileProfileActivator 
> org.apache.maven.model.profile.activation.FileProfileActivator.setPathTranslator(org.apache.maven.model.path.PathTranslator)'
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.internal.SettingsXmlProfileSelector.<init>(SettingsXmlProfileSelector.java:50)
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.MavenWorkingSessionImpl.getRemoteRepositories(MavenWorkingSessionImpl.java:327)
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.MavenWorkingSessionImpl.resolveDependencies(MavenWorkingSessionImpl.java:199)
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.MavenStrategyStageBaseImpl.using(MavenStrategyStageBaseImpl.java:71)
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.MavenStrategyStageBaseImpl.withTransitivity(MavenStrategyStageBaseImpl.java:53)
>         at 
> org.jboss.shrinkwrap.resolver.impl.maven.MavenStrategyStageBaseImpl.withTransitivity(MavenStrategyStageBaseImpl.java:40)
>         at 
> org.arquillian.container.chameleon.controller.Resolver.resolve(Resolver.java:45)
>         at 
> org.arquillian.container.chameleon.ContainerLoader.load(ContainerLoader.java:36)
>         at 
> org.arquillian.container.chameleon.ChameleonConfiguration.getConfiguredAdapter(ChameleonConfiguration.java:116)
>         at 
> org.arquillian.container.chameleon.ChameleonContainer.init(ChameleonContainer.java:81)
>         at 
> org.arquillian.container.chameleon.InitiateContainer.initiateChameleon(InitiateContainer.java:69)
>         at 
> org.arquillian.container.chameleon.InitiateContainer.setup(InitiateContainer.java:38)
>  {code}
> It seems that method
> {code:java}
> public FileProfileActivator setPathTranslator( PathTranslator pathTranslator 
> ) {code}
> as well as the class of its argument - has been refactored/renamed to
> {code:java}
> public FileProfileActivator setProfileActivationFilePathInterpolator( 
> ProfileActivationFilePathInterpolator profileActivationFilePathInterpolator ) 
> {code}
> While the new name might be regarded as more stylish and/or even more 
> appropriate, unfortunately, this results in an incompatible change of a 
> publicly documented API:
> [https://maven.apache.org/ref/3.8.4/maven-model-builder/apidocs/org/apache/maven/model/profile/activation/FileProfileActivator.html]
> [https://maven.apache.org/ref/3.8.5/maven-model-builder/apidocs/org/apache/maven/model/profile/activation/FileProfileActivator.html]
> Therefore, please revert this change - it clearly breaks some valuable 
> dependent software (which unfortunately is no longer maintained by RedHat)...
> Many thanks in advance! :)
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to