我曾在早期版本的Java中使用过Maven,但现在我正在尝试将其与Java 10一起使用。我构建了一个简单的Hello world项目,具体如下:
package main;公共类测试{
public static void main(String[] args) {
System.out.println("Hello World");
}}包含一个module-info类:
模块maven.test {导出主;}
该项目关联的pom为:
">http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 MavenTest MavenTest 0.0.1-快照MavenTest源maven-编译器-插件3.7.0 10
当我构建项目时,它构建成功。然后,我从Maven中央存储库添加了一个依赖项: org.jsoup jsoup 1.7.3
这也成功构建了。然后添加一个本地安装的jar。
<dependency>
<groupId>com.artificialmed</groupId>
<artifactId>DBconnectValueObjects</artifactId>
<version>1.0</version>
</dependency>当我这样做时,我得到一个构建失败,并显示以下错误消息:
错误,无法对项目org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile执行目标编译(默认编译):执行默认-目标org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile编译失败。IllegalArgumentException ->帮助1
我还没有找到任何可以帮助我解决这个错误的东西。当我使用完全调试日志重新构建项目时,我看不到任何有用的信息。我知道本地jar已正确安装在我的存储库中,因为当我将该jar包含在用Java7编译的项目中时,项目构建成功。因此,我怀疑这是与Java 10和本地安装的jars相关的问题。
有没有人知道如何解决这个问题?
埃利奥特
发布于 2018-12-19 08:34:49
我认为这可能与this question有关。
基本上,我不认为您的问题与本地jar有关-如果您使用maven安装插件将其安装在本地maven存储库($USER_HOME/.m2)中,则它有一个pom.xml,并且maven应该无法与任何其他maven依赖项区分开来。
我看到的唯一“错误”的是maven编译器插件的版本--当前版本是3.8.0,到目前为止,我在Java 11上使用它没有任何问题。另外,请注意设置源和目标java版本的机制发生了变化,如以下代码片段所示:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<release>10</release>
</configuration>
</plugin>
</plugins>
</build>https://stackoverflow.com/questions/53841163
复制相似问题