Maven准备好JDK9了吗?

Maven准备好JDK9了吗?,maven,maven-3,java-9,Maven,Maven 3,Java 9,今天我尝试了,并尝试使用最新的Maven 3.3.9进行编译 这些是命令(部分找到) 但是我得到。。。简言之: [WARNING] Error injecting: org.codehaus.plexus.archiver.jar.JarArchiver java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native

今天我尝试了,并尝试使用最新的Maven 3.3.9进行编译

这些是命令(部分找到)

但是我得到。。。简言之:

[WARNING] Error injecting: org.codehaus.plexus.archiver.jar.JarArchiver
java.lang.ExceptionInInitializerError
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(java.base@9-ea/NativeConstructorAccessorImpl.java:62)

...

at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    at org.codehaus.plexus.archiver.zip.AbstractZipArchiver.<clinit>(AbstractZipArchiver.java:116)
    ... 89 more
[WARNING] Error injecting: org.apache.maven.plugin.jar.JarMojo
java.lang.ExceptionInInitializerError
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(java.base@9-ea/NativeConstructorAccessorImpl.java:62)

...

at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    at org.codehaus.plexus.archiver.zip.AbstractZipArchiver.<clinit>(AbstractZipArchiver.java:116)
    ... 89 more

以下是一位Maven PMC成员(我)的回答:

不,不是。罗伯特·斯科尔特正在做这件事。拼图和其他东西带来了很多变化。没有正式的时间表来提供完整的compat(Maven+官方插件)

你看到的问题其实不是Maven而是Plexus Archiver。请参阅他们的GitHub页面。如果您认为您可以增加价值,请联系maven dev邮件列表


进度文档:

以下是一位Maven PMC成员(me)的回答:

不,不是。罗伯特·斯科尔特正在做这件事。拼图和其他东西带来了很多变化。没有正式的时间表来提供完整的compat(Maven+官方插件)

你看到的问题其实不是Maven而是Plexus Archiver。请参阅他们的GitHub页面。如果您认为您可以增加价值,请联系maven dev邮件列表


进度文档:

更新:如果现在没有此解决方案,应该可以使用

这个问题已经由plexus archiver团队解决,但尚未发布-感谢Michael-O为我指出了正确的位置:)

现在,ctomc在年发布了一个解决方案,使用旧的plexus archiver版本2.4.4:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4.1</version>                    
    <dependencies>
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-archiver</artifactId>
            <version>2.4.4</version>
        </dependency>
    </dependencies>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.6</version>
    <dependencies>
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-archiver</artifactId>
            <version>2.4.4</version>
        </dependency>
    </dependencies>
</plugin>

org.apache.maven.plugins
maven汇编插件
2.4.1                    
org.codehaus.plexus
神经丛拱
2.4.4
org.apache.maven.plugins
maven jar插件
2.6
org.codehaus.plexus
神经丛拱
2.4.4

更新:如果现在没有此解决方案,应该可以正常工作

这个问题已经由plexus archiver团队解决,但尚未发布-感谢Michael-O为我指出了正确的位置:)

现在,ctomc在年发布了一个解决方案,使用旧的plexus archiver版本2.4.4:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4.1</version>                    
    <dependencies>
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-archiver</artifactId>
            <version>2.4.4</version>
        </dependency>
    </dependencies>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.6</version>
    <dependencies>
        <dependency>
            <groupId>org.codehaus.plexus</groupId>
            <artifactId>plexus-archiver</artifactId>
            <version>2.4.4</version>
        </dependency>
    </dependencies>
</plugin>

org.apache.maven.plugins
maven汇编插件
2.4.1                    
org.codehaus.plexus
神经丛拱
2.4.4
org.apache.maven.plugins
maven jar插件
2.6
org.codehaus.plexus
神经丛拱
2.4.4

是的,现在准备好了。仍有一些东西在进行中,但通常是可用的。
例如,请查看。

是的,它现在已经准备好了。仍有一些东西在进行中,但通常是可用的。
例如,我也有同样的问题,最近发布的最新maven javadoc插件修复了这个问题。将pom文件中的依赖项更新为
3.0.0-M1

我也有同样的问题,最近发布的最新maven javadoc插件修复了它。将pom文件中的依赖项更新为
3.0.0-M1

Java文档插件在上一版本中仍然存在问题。(3.0.0.M1)

Java文档插件在最新版本中仍然存在问题。(3.0.0.M1)

我认为maven现在已经准备好了,下面的代码片段可以告诉maven使用java 9:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
                <source>9</source>
                <target>9</target>
            </configuration>
        </plugin>
    </plugins>
</build>

maven编译器插件
3.7.0
9
9

我认为maven现在已经准备好了,以下代码片段可以告诉maven使用java 9:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
                <source>9</source>
                <target>9</target>
            </configuration>
        </plugin>
    </plugins>
</build>

maven编译器插件
3.7.0
9
9

啊,非常感谢!我想我在什么地方读到过,这已经是可能的了。你是说这个github回购吗@卡鲁塞尔是的,这是问题追踪者。您也可以手动尝试使用plexus archiver快照。啊,非常感谢!我想我在什么地方读到过,这已经是可能的了。你是说这个github回购吗@卡鲁塞尔是的,这是问题追踪者。您也可以手动尝试使用plexus archiver快照。您共享的项目使用编译器和jar插件,但我们将获得更多插件,如jlink、jmod、JDEP。该项目没有提供自动模块和未命名模块的示例。我认为Maven团队仍在研究它们。不确定是什么。。但一般都是可用的。。是指这里。我相信这个答案太笼统了。Eclipse的M2E插件似乎还没有准备好:您共享的项目使用了编译器和jar插件,但我们将获得更多的插件,如jlink、jmod、jdep。该项目没有提供自动模块和未命名模块的示例。我认为Maven团队仍在研究它们。不确定是什么。。但一般都是可用的。。是指这里。我相信这个答案太笼统了。理想情况下,我们会追随另一个,成为一个可靠的源代码。Eclipse的M2E插件似乎还没有准备好:看起来Maven仍然存在一些问题。你可能想试试这个项目:看起来Maven仍然有一些问题。您可能想尝试这个项目:只是编译器插件更新并不能证明maven已经准备好了,而且有一个链接可以证明maven已经准备好了。答案也与最初的问题错误无关,只是编译器插件的更新并不能证明maven已经准备就绪,并且有一个链接可以证明maven已经准备就绪。答案也与最初的问题错误无关。