Hi,
 
We are facing some issues with the “tycho-versions-plugin” and maven profiles.
We didn’t succeed to get it working using tycho version 1.0.0 or 1.1.0-SNAPSHOT
 
Here you can find an example to reproduce the error:
https://github.com/chrisolivier/tycho-example
This is a RCP/RAP application using profiles to be able to build both versions.
 
The project contains some optional dependencies that we ignore with the tag  ‘<optionalDependencies>’ and extra requirement for each profile like ‘org.eclipse.ui’ and ‘org.eclipse.rap.ui’ etc ..
We also use tycho-pomless 1.0.0
The application structure was inspired by this tutorial :
http://www.vogella.com/tutorials/EclipseTycho/article.html#exercise-configure-tycho-build
 
Using the following command line we get a
ResolverException :
./mvnw org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=1.2.0-SNAPSHOT -Dartifacts=com.compufirst.configuration -P rcp,rap -e
 
 
[ERROR] Cannot resolve project dependencies:
[ERROR]   Software being installed: com.compufirst.rcp 1.1.0.qualifier
[ERROR]   Missing requirement: com.compufirst.rcp 1.1.0.qualifier requires 'bundle org.eclipse.swt 0.0.0'
 but it could not be found
[ERROR]
[ERROR] See
http://wiki.eclipse.org/Tycho/Dependency_Resolution_Troubleshooting for help.
[ERROR] Cannot resolve dependencies of MavenProject: com.compufirst.tycho:com.compufirst.rcp:1.1.0-SNAPSHOT
 @ C:\Users\christophe\git\tycho-example\bundles\com.compufirst.rcp\.polyglot.build.properties: See log for details ->
[Help 1]
org.apache.maven.MavenExecutionException: Cannot resolve dependencies of MavenProject: com.compufirst.tycho:com.compufirst.rcp:1.1.0-SNAPSHOT
 @ C:\Users\christophe\git\tycho-example\bundles\com.compufirst.rcp\.polyglot.build.properties
        at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:100)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:267)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.maven.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:39)
        at org.apache.maven.wrapper.WrapperExecutor.execute(WrapperExecutor.java:122)
        at org.apache.maven.wrapper.MavenWrapperMain.main(MavenWrapperMain.java:60)
Caused by: org.eclipse.tycho.artifacts.DependencyResolutionException: Cannot resolve dependencies of MavenProject: com.compufirst.tycho:com.compufirst.rcp:1.1.0-SNAPSHOT
 @ C:\Users\christophe\git\tycho-example\bundles\com.compufirst.rcp\.polyglot.build.properties
        at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:201)
        at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:115)
        at org.eclipse.tycho.p2.resolver.P2DependencyResolver.doResolveDependencies(P2DependencyResolver.java:367)
        at org.eclipse.tycho.p2.resolver.P2DependencyResolver.resolveDependencies(P2DependencyResolver.java:335)
        at org.eclipse.tycho.core.resolver.DefaultTychoResolver.resolveProject(DefaultTychoResolver.java:117)
        at org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead(TychoMavenLifecycleParticipant.java:95)
        ... 21 more
Caused by: org.eclipse.tycho.p2.util.resolution.ResolverException: See log for details
        at org.eclipse.tycho.p2.util.resolution.ProjectorResolutionStrategy.resolve(ProjectorResolutionStrategy.java:88)
        at org.eclipse.tycho.p2.util.resolution.AbstractResolutionStrategy.resolve(AbstractResolutionStrategy.java:42)
        at org.eclipse.tycho.p2.resolver.P2ResolverImpl.resolveDependencies(P2ResolverImpl.java:194)
        ... 26 more
 
With only one profile we get a NPE :
./mvnw org.eclipse.tycho:tycho-versions-plugin:set-version -DnewVersion=1.2.0-SNAPSHOT -Dartifacts=com.compufirst.configuration -P rcp -e
 
 
[ERROR] Failed to execute goal
org.eclipse.tycho:tycho-versions-plugin:1.1.0-SNAPSHOT:set-version
(default-cli) on project com.compufirst.tycho.root:
Execution default-cli of goal org.eclipse.tycho:tycho-versions-plugin:1.1.0-SNAPSHOT:set-version failed.: NullPointerException ->
[Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal
org.eclipse.tycho:tycho-versions-plugin:1.1.0-SNAPSHOT:set-version
(default-cli) on project com.compufirst.tycho.root:
Execution default-cli of goal org.eclipse.tycho:tycho-versions-plugin:1.1.0-SNAPSHOT:set-version failed.
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:309)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:194)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:107)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:993)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:345)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:191)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
       at java.lang.reflect.Method.invoke(Method.java:497)
        at org.apache.maven.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:39)
        at org.apache.maven.wrapper.WrapperExecutor.execute(WrapperExecutor.java:122)
        at org.apache.maven.wrapper.MavenWrapperMain.main(MavenWrapperMain.java:60)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-cli of goal org.eclipse.tycho:tycho-versions-plugin:1.1.0-SNAPSHOT:set-version
 failed.
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:145)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
        ... 27 more
Caused by: java.lang.NullPointerException
        at org.eclipse.tycho.versions.engine.VersionsEngine.getProject(VersionsEngine.java:167)
        at org.eclipse.tycho.versions.engine.VersionsEngine.getMutablePom(VersionsEngine.java:89)
        at org.eclipse.tycho.versions.engine.VersionsEngine.addVersionChange(VersionsEngine.java:81)
        at org.eclipse.tycho.versions.SetMojo.execute(SetMojo.java:129)
        at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        ... 28 more
 
 
If we comment 1 profile in pom files and run it again it’s working, obviously only bundles referenced within the remaining profile are updated.
Has somebody encountered the same issue? 
Have we done something wrong in our pom files ?
 
Thanks
 
Christophe