scalac 错误:错误选项:通过命令行在 mvn 包上执行“-make:transitive”

Posted

技术标签:

【中文标题】scalac 错误:错误选项:通过命令行在 mvn 包上执行“-make:transitive”【英文标题】:scalac error: bad option: '-make:transitive' on mvn package via command line 【发布时间】:2016-05-03 04:47:07 【问题描述】:

按照http://docs.scala-lang.org/tutorials/scala-with-maven.html 设置一个简单的scala maven 项目。

在使用 mvn archetype:generate 设置 scala-archetype-simple:1.6 后,我获得了 BUILD SUCCESS。

但是当我 mvn package 时,我得到 [ERROR] scalac error: bad option: '-make:transitive'

可能是什么问题?我该如何解决?

使用 Scala 版本 2.11.7

【问题讨论】:

【参考方案1】:

我刚刚从 pom.xml 中删除了 <arg>-make:transitive</arg> 并且编译工作正常。

另外你可能需要添加

<dependency>
<groupId>org.specs2</groupId>
<artifactId>specs2-junit_$scala.compat.version</artifactId>
<version>2.4.16</version>
<scope>test</scope>
</dependency>

让测试通过。

【讨论】:

为了澄清,您可能需要添加以下依赖项:org.specs2specs2-junit_$scala.compat.version2.4.16test 我的 pom 中什至没有make:transitive 非常感谢鲍里斯。【参考方案2】:

使用 intellij

我不得不从 IntelliJ 编译器配置中删除它,因为在 intellij 中运行 scalatests 时编译失败。

.idea/scala_compiler 配置如下,

cat .idea/scala_compiler.xml

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="ScalaCompilerConfiguration">
    <profile name="Maven 1" modules="log-service">
      <parameters>
        <parameter value="-make:transitive" />
        <parameter value="-dependencyfile" />
        <parameter value="$PROJECT_DIR$/target/.scala_dependencies" />
      </parameters>
    </profile>
  </component>
</project>

我删除了编译器的-make-transitive 参数,重新启动了intellij。

我不知道是谁/为什么将 -make:transitive 参数添加到 .idea 配置中。

【讨论】:

看不到 .idea/config . 没有.idea/config。我可能的意思是想法配置。检查.idea/scala_compiler.xml

以上是关于scalac 错误:错误选项:通过命令行在 mvn 包上执行“-make:transitive”的主要内容,如果未能解决你的问题,请参考以下文章

Maven 构建中的错误:无法识别 mvn.bat

如何通过命令行在pytest中传递参数

Maven 命令 mvn 从终端运行没有错误,但从 python 运行没有错误

通过命令行在 BigQuery 中加载数据时出错:已更新

Gitlab CI/CD 运行器:找不到 mvn 命令

通过命令行在 Visual Studio 中编译单个独立文件