| Hello m2e users, 
 I have been trying to build a maven project that needs to have tycho configurators executed programmatically but with not much luck. Usually I can use this code to build a maven pom.xml file: 
 public static BuildSummary runMaven(IFile pomFile, List<String> goals, IProgressMonitor monitor) throws CoreException{ 
         if (monitor == null){             monitor = new NullProgressMonitor();         }         try {             monitor.beginTask("Building: " + pomFile.getName(), 3);             MavenProjectManager projectManager = MavenPlugin.getDefault().getMavenProjectManager();             IMaven maven = MavenPlugin.getDefault().getMaven();             IMavenProjectFacade facade = projectManager.create(pomFile, true, new SubProgressMonitor(monitor, 1));             ResolverConfiguration config = facade.getResolverConfiguration();             MavenExecutionRequest request = projectManager.createExecutionRequest(pomFile, config, new SubProgressMonitor(monitor, 1));             request.getUserProperties().setProperty("m2e.version", MavenPlugin.getVersion());             request.setGoals(goals);             MavenPlugin.getDefault().getConsole().showConsole();             MavenExecutionResult result = maven.execute(request, new SubProgressMonitor(monitor, 1));             if ( result.hasExceptions()){             	// Throw CoreException             }                          BuildSummary summary = result.getBuildSummary(result.getProject()); 
             return summary;         }          finally {             monitor.done();         }} 
 But when I try this on a project that needs tycho conifurations ran I found this doesn't work. I found that the m2eclipse auto builder was also failing on my project in the same way and after doing some googling I realized I need this in my project pom for the m2eclipse auto builder to work correctly: 
 <profiles>     <profile>       <id>m2e</id>       <activation>         <property>           <name>m2e.version</name>         </property>       </activation>       <build>         <plugins>           <plugin>             <groupId>org.maven.ide.eclipse</groupId>             <artifactId>lifecycle-mapping</artifactId>             <version>0.10.0</version>             <configuration>               <mappingId>customizable</mappingId>               <configurators>                 <configurator id="org.maven.ide.eclipse.jdt.javaConfigurator" />                 <configurator id="org.maven.ide.eclipse.modello.modelloConfigurator" />                 <configurator id="org.maven.ide.eclipse.plexus.annotations.plexusConfigurator" />                 <configurator id="org.maven.ide.eclipse.mavenarchiver.pomProperties" />                 <configurator id="maven-bundle-plugin" />               </configurators>               <mojoExecutions>                 <mojoExecution>org.apache.maven.plugins:maven-resources-plugin::</mojoExecution>                 <mojoExecution>org.apache.maven.plugins:maven-plugin-plugin::descriptor</mojoExecution>               </mojoExecutions>             </configuration>           </plugin> 
           <plugin>             <groupId>org.sonatype.tycho</groupId>             <artifactId>tycho-maven-plugin</artifactId>             <version>0.7.0</version>             <extensions>true</extensions>           </plugin>         </plugins>       </build>     </profile></profiles> 
 However, the function I have still does not work. I even tried the following two lines to be sure that the m2e profile would be picked up. 
 ResolverConfiguration config = facade.getResolverConfiguration(); config.setActiveProfiles("m2e"); // Added this, but when execute runs it says it can't be activated because it does not exist MavenExecutionRequest request = projectManager.createExecutionRequest(pomFile, config, new SubProgressMonitor(monitor, 1)); request.getUserProperties().setProperty("m2e.version", MavenPlugin.getVersion()); // Added this in hopes of activating the m2e profile in the pom 
 But this doesn't seem to help either. Is there a better way to do this? Can anyone point me to the m2eclipse auto builder code so I can see what it is doing differently? m2e version = 0.10.2, tycho=0.4.3 
 I have also tried this code with the same results: 
 IMaven maven = MavenPlugin.getDefault().getMaven(); MavenPlugin.getDefault().getConsole().showConsole(); File file = new File(pomFile.getLocationURI()); File projectDirectory = new File(pomFile.getProject().getLocationURI());	 MavenExecutionRequest request; request = maven.createExecutionRequest(monitor); request.setBaseDirectory( projectDirectory ); request.setPom(file); request.setGoals(goals); request.setShowErrors(true); MavenExecutionResult result = maven.execute(request, monitor); 	
 Thanks in advance, Daniel 
 |