|
|
Re: wost wanted features for Maven integration [message #6952 is a reply to message #6928] |
Thu, 15 May 2008 13:51 |
Eclipse User |
|
|
|
Originally posted by: igorfie.yahoo.com
Not sure how relevant this is, but we have a subproject called Tycho
aimed at providing first-class maven support for building eclipse and
osgi bundles. One of Tycho's goals is to enforce OSGi class visibility
at compile time and we're using Eclipse JDT compiler to do this. Tycho
already uses Eclipse 3.2 JDT compiler but we plan to move to 3.3 or 3.4
in the near future. It should be possible to use Tycho compiler in
standalone maven build, but I have not tried this.
Ulli Hafner wrote:
> Eugene Kuleshov wrote:
>>
>> m2eclipse development team would like your feedback on the most
>> wanted features for Maven integration for Eclipse. This would help us
>> to plan and prioritize the new features for the project roadmap.
>>
>> Please let us know what features and improvements you would like to
>> see in the next m2eclipse releases and if you are interested in
>> working on ere
>> some components.
>>
>> You can respond here or add your ideas to the corresponding wiki page
>> [1] or submit and vote on the bug reports [2].
>>
>> Thank you in advance
>>
>> m2eclipse team
>>
>> [1] http://docs.codehaus.org/display/M2ECLIPSE/Other+Ideas+and+U se+Cases
>> [2] http://jira.codehaus.org/browse/MNGECLIPSE
>>
>
> Are there plans to also add an up-to-date support for the Eclipse
> compiler? Currently our team compiles the sources locally using the
> Eclipse compiler and on the build server using the Java compiler
> provided by maven.
>
> It would be cool if the same compilers could be used on the client and
> server side. There is an eclipse compiler available in the
> plexus-compiler, however this compiler is based on Eclipse 3.1. Would be
> cool if this compiler would be Eclipse 3.4 (or at least 3.3).
>
> Thanks, Ulli
|
|
|
|
|
Re: wost wanted features for Maven integration [message #7131 is a reply to message #7106] |
Fri, 16 May 2008 15:53 |
Eclipse User |
|
|
|
Originally posted by: igor.ifedorenko.com
Internally, maven-compiler-plugin uses
org.codehaus.plexus.compiler.Compiler with role-hint=jdt which is
provided by tycho-compiler-jdt. I ran a quick test and it looks like you
can activate this compiler in the usual way, i.e.
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>jdt</compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.tycho</groupId>
<artifactId>tycho-compiler-jdt</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
Please note that I am using locally modified tycho so your results may
differ ;-)
Eugene Kuleshov wrote:
> Ulli Hafner wrote:
>>> Not sure how relevant this is, but we have a subproject called Tycho
>>> aimed at providing first-class maven support for building eclipse and
>>> osgi bundles. One of Tycho's goals is to enforce OSGi class
>>> visibility at compile time and we're using Eclipse JDT compiler to do
>>> this. Tycho already uses Eclipse 3.2 JDT compiler but we plan to move
>>> to 3.3 or 3.4 h
>> That sounds quite interesting! Is the compiler activated in the same
>> way as in the plexus compiler flag? Do you have an example
>> configuration how to use the compiler?
> Please note that maven-osgi-compiler-plugin from Tycho project is used
> fro compiling OSGi bundles and I am not sure if it would work for
> regular Java projects.
>
> It should be sufficient to declare newer Eclipse version for
> plexus-compiler-eclipse adapter. So here is the magic configuration
> required for using Eclipse 3.3 compiler (this is kind of a long story)
> that I've tested with Maven 2.0.9:
>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-compiler-plugin</artifactId>
> <configuration>
> <source>1.4</source>
> <target>1.4</target>
> <compilerId>eclipse</compilerId>
> </configuration>
> <dependencies>
> <dependency>
> <groupId>org.codehaus.plexus</groupId>
> <artifactId>plexus-compiler-eclipse</artifactId>
> <version>1.5.1</version>
> </dependency>
> <dependency>
> <groupId>org.eclipse.jdt</groupId>
> <artifactId>core</artifactId>
> <version>3.3.0-v_771</version>
> <exclusions>
> <exclusion>
> <groupId>org.eclipse.core</groupId>
> <artifactId>resources</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.eclipse.core</groupId>
> <artifactId>runtime</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.eclipse.core</groupId>
> <artifactId>filesystem</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.eclipse</groupId>
> <artifactId>text</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.eclipse.team</groupId>
> <artifactId>core</artifactId>
> </exclusion>
> </exclusions>
> </dependency>
> </dependencies>
> </plugin>
> regards,
> Eugene
>
|
|
|
|
Re: wost wanted features for Maven integration [message #9398 is a reply to message #9372] |
Fri, 23 May 2008 12:43 |
Eclipse User |
|
|
|
Originally posted by: igor.ifedorenko.com
Ulli,
Have you tried Tycho compiler I mentioned earlier? It is available from
http://nexus.sonatype.org:8081/nexus/content/repositories/ec lipse-snapshots
repository and currently uses JDT compiler from eclipse 3.2.1 but I'll
be switching it to 3.4 soon.
Ulli Hafner wrote:
> Eugene Kuleshov wrote:
>> Ulli Hafner wrote:
>>>> Not sure how relevant this is, but we have a subproject called Tycho
>>>> aimed at providing first-class maven support for building eclipse
>>>> and osgi bundles. One of Tycho's goals is to enforce OSGi class
>>>> visibility at compile time and we're using Eclipse JDT compiler to
>>>> do this. Tycho already uses Eclipse 3.2 JDT compiler but we plan to
>>>> move to 3.3 or 3.4 h
>>> That sounds quite interesting! Is the compiler activated in the same
>>> way as in the plexus compiler flag? Do you have an example
>>> configuration how to use the compiler?
>> Please note that maven-osgi-compiler-plugin from Tycho project is
>> used fro compiling OSGi bundles and I am not sure if it would work for
>> regular Java projects.
>>
>> It should be sufficient to declare newer Eclipse version for
>> plexus-compiler-eclipse adapter. So here is the magic configuration
>> required for using Eclipse 3.3 compiler (this is kind of a long story)
>> that I've tested with Maven 2.0.9:
>>
>> <plugin>
>> <groupId>org.apache.maven.plugins</groupId>
>> <artifactId>maven-compiler-plugin</artifactId>
>> <configuration>
>> <source>1.4</source>
>> <target>1.4</target>
>> <compilerId>eclipse</compilerId>
>> </configuration>
>> <dependencies>
>> <dependency>
>> <groupId>org.codehaus.plexus</groupId>
>> <artifactId>plexus-compiler-eclipse</artifactId>
>> <version>1.5.1</version>
>> </dependency>
>> <dependency>
>> <groupId>org.eclipse.jdt</groupId>
>> <artifactId>core</artifactId>
>> <version>3.3.0-v_771</version>
>
> This does not work for me, I get the following exception. (Note
> that changing the dependency to Eclipse 3.2.1 results in the
> same exception, changing to Eclipse 3.1 works. Seems to be
> an incompatible API change).
>
> org.apache.maven.plugin.CompilerMojo#execute() caused a
> linkage er
> ror (java.lang.NoSuchMethodError) and may be out-of-date. Check the realms:
> Plugin realm =
> app0.child-container
> urls =
> file:/C:/Build/Maven-Repository/org/apache/maven/plugins/mav en-compile
> r-plugin/2.0.2/maven-compiler-plugin-2.0.2.jar
> urls =
> file:/C:/Build/Maven-Repository/org/codehaus/plexus/plexus-c ompiler-ec
> lipse/1.5.1/plexus-compiler-eclipse-1.5.1.jar
> urls =
> file:/C:/Build/Maven-Repository/org/codehaus/plexus/plexus-u tils/1.0.4
> /plexus-utils-1.0.4.jar
> urls =
> file:/C:/Build/Maven-Repository/org/codehaus/plexus/plexus-c ompiler-ap
> i/1.5.3/plexus-compiler-api-1.5.3.jar
> urls =
> file:/C:/Build/Maven-Repository/org/eclipse/jdt/core/3.3.0-v _771/core-
> 3.3.0-v_771.jar
> urls =
> file:/C:/Build/Maven-Repository/org/codehaus/plexus/plexus-c ompiler-ma
> nager/1.5.3/plexus-compiler-manager-1.5.3.jar
> urls =
> file:/C:/Build/Maven-Repository/org/codehaus/plexus/plexus-c ompiler-ja
> vac/1.5.3/plexus-compiler-javac-1.5.3.jar
> Container realm = plexus.core
> urls =
> file:/C:/Build/Tools/apache-maven-2.0.8/bin/../lib/maven-2.0 .9-uber.ja
> r
>
> ------------------------------------------------------------ ------------
> FATAL ERROR
>
> ------------------------------------------------------------ ------------
>
> org.eclipse.jdt.internal.compiler.CompilationResult.getProbl ems()[Lorg/ec
> lipse/jdt/core/compiler/IProblem;
> [INFO]
> ------------------------------------------------------------ ------------
> [INFO] Trace
> java.lang.NoSuchMethodError:
> org.eclipse.jdt.internal.compiler.CompilationResult
> .getProblems()[Lorg/eclipse/jdt/core/compiler/IProblem;
> at
> org.codehaus.plexus.compiler.eclipse.EclipseJavaCompiler$Ecl ipseCompi
> lerICompilerRequestor.acceptResult(EclipseJavaCompiler.java: 533)
> at
> org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler. java:398)
>
> at
> org.codehaus.plexus.compiler.eclipse.EclipseJavaCompiler.com pile(Ecli
> pseJavaCompiler.java:206)
> at
> org.apache.maven.plugin.AbstractCompilerMojo.execute(Abstrac tCompiler
> Mojo.java:493)
> at
> org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.ja va:114)
> at
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(Def aultPlugi
> nManager.java:451)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeG oals(Defa
> ultLifecycleExecutor.java:558)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeG oalWithLi
> fecycle(DefaultLifecycleExecutor.java:499)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeG oal(Defau
> ltLifecycleExecutor.java:478)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeG oalAndHan
> dleFailures(DefaultLifecycleExecutor.java:330)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeT askSegmen
> ts(DefaultLifecycleExecutor.java:291)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute( DefaultLi
> fecycleExecutor.java:142)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:33 6)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce ssorImpl.
> java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe thodAcces
> sorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at
> org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.ja va:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at
> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher. java:430)
>
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.04097 seconds