我有一个大型 Java 项目,其中有大量 jar 文件依赖项。当我尝试从 Eclipse 或 Netbeans 运行项目(使用 exec)时,Maven 抛出异常,结果是类路径上的条目数量过多(仅包含所需条目的 2/3)。有谁知道这个问题的解决方法? (除了构建可执行 jar 并从终端运行它。)是否可以“扩展”“类路径缓冲区”大小?
这是一个 Maven exec 插件错误,记录在MEXEC-68 https://jira.codehaus.org/browse/MEXEC-68,记者创建了一个补丁,希望尽快解决。
一种解决方法是使用 maven-jar-plugin 的此配置将类路径添加到清单文件中,将依赖项添加到文件夹中,然后仅将该文件夹添加到 CLASSPATH envvar 中。
例如:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
...
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
</archive>
</configuration>
...
</plugin>
</plugins>
</build>
...
</project>
这将添加到清单中,如下所示:
Class-Path: plexus-utils-1.1.jar commons-lang-2.1.jar
如果该 JAR 位于 CLASSPATH 文件夹中,您可以使用 maven exec 插件运行 JAR,隐藏类路径,如下所示:
mvn exec:exec [...] -Dexec.classpathScope="test"
我使用 -Dexec.classpathScope="test" 使插件忽略依赖项并仅添加范围测试中的依赖项。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)