【发布时间】:2018-06-02 18:46:45
【问题描述】:
我在我的 Maven 项目中发现了一个与 Scala-maven-plugin 相关的错误。我有很长的特征序列(用于机器学习目的)我手工编码(74 个元素)。
我在序列中添加了一个元素,但它不再编译。如果我评论这个序列的任何元素,元素的数量会减少并且它会编译。
更多信息,这里是我编译的最终输出:
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.3.1:compile (default) on project SecretProject: wrap: org.apache.commons.exec.ExecuteException: Process exited with an error: 240 (Exit value: 240) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
加上 StackTrace 的开头:
[INFO] Compiling 13 source files to /home/belka/Bureau/SecretProject/target/classes at 1513759339071
[ERROR] error: java.lang.StackOverflowError
[INFO] at scala.reflect.internal.TreeInfo.isSelfConstrCall(TreeInfo.scala:296)
[INFO] at scala.reflect.internal.TreeInfo.isSelfOrSuperConstrCall(TreeInfo.scala:344)
[INFO] at scala.reflect.internal.Trees$UnderConstructionTransformer$class.transform(Trees.scala:1701)
[INFO] at scala.tools.nsc.transform.ExplicitOuter$OuterPathTransformer.transform(ExplicitOuter.scala:291)
[INFO] at scala.tools.nsc.transform.ExplicitOuter$ExplicitOuterTransformer.transform(ExplicitOuter.scala:457)
[INFO] at scala.tools.nsc.transform.ExplicitOuter$ExplicitOuterTransformer.transform(ExplicitOuter.scala:352)
[INFO] at scala.reflect.internal.Trees$class.itransform(Trees.scala:1345)
(修改后的项目名称)
- 有人遇到过
Scala-maven-plugin的类似问题吗? -
Scala-maven-plugin解析器(在编译器中)是否对序列解析有任何硬限制? - 如何解决并编译我的项目?
- 为什么它适用于 IntelliJ 编译(“播放”按钮)但不适用于 Maven 编译?
编辑:
我正在添加包含我的Scala-maven-plugin 片段的 pom.xml 片段:
<plugin>
<!-- see http://davidb.github.com/scala-maven-plugin -->
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>testCompile</goal>
</goals>
<configuration>
<args>
<arg>-dependencyfile</arg>
<arg>${project.build.directory}/.scala_dependencies</arg>
</args>
<jvmArgs>
<jvmArg>-Xms512m</jvmArg>
<jvmArg>-Xmx4096m</jvmArg>
</jvmArgs>
</configuration>
</execution>
</executions>
</plugin>
【问题讨论】:
-
你得到什么错误?请举一个重现问题的小例子。
-
我添加了有关堆栈跟踪的信息 + 以重现问题,您可以创建一个包含 74 个元素的序列,然后在第 75 个时它不应再编译了。
-
我尝试创建一个由 200 个元素组成的手动添加的序列,效果很好。请提供一个最小的、可验证的完整示例,以便我们重现您的问题。
-
感谢您的回答和您的时间。你能提供我你的jdk版本吗?你试过用 maven 编译吗?
-
可以分享一下 pom.xml 片段和 scala-maven-plugin 的配置吗?
标签: scala maven scala-maven-plugin