【问题标题】:Java and Scala not working togetherJava 和 Scala 不能一起工作
【发布时间】:2014-04-05 12:36:10
【问题描述】:

我有 2 个项目,一个是 maven java,另一个是 maven Scala。

scala 是一个库,我想在我的 java 应用程序中使用它。

我在两者中都有以下依赖项:

<dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-compiler</artifactId>
            <version>2.9.0-1</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.9.0-1</version>
        </dependency>

在谷歌搜索中发现,这两个应用程序中都有这个 maven-scala-plugin

<plugin>
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>
                <version>2.14.3</version>
                <configuration>
                    <charset>UTF-8</charset>
                    <jvmArgs>
                        <jvmArg>-Xmx1024m</jvmArg>
                    </jvmArgs>
                </configuration>
                <executions>
                    <execution>
                        <id>compile</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <phase>compile</phase>
                    </execution>
                    <execution>
                        <id>test-compile</id>
                        <goals>
                            <goal>testCompile</goal>
                        </goals>
                        <phase>test-compile</phase>
                    </execution>
                    <execution>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

在 maven 中为两者指定的源和目标都是 java 1.6,我正在使用 Netbeans(甚至从命令行尝试过,但没有用)

我构建了scala项目,然后在maven java项目中标记了一个系统依赖项。

事实上,我正在使用 goose 解析器(scala 项目 - https://github.com/jiminoc/goose

但每当我运行 java 项目/文件时,解析器类都会得到 ClassNotFoundException

现在已经尝试了几个小时,但没有成功。

请帮忙。

另外,我已经尝试使用 scala 版本 2.10.4 进行构建,但它也有同样的问题。

【问题讨论】:

  • 对于其他登陆这里的人,我最终使用 Eclipse Juno 4.2 并安装了 m2escala-idemaven support for scala 插件。我仍然遵循相同的规则,构建了 scala 并将其用作我的 maven java 项目中的依赖项。我认为问题与版本控制或缺少 jar 有关。

标签: java scala maven


【解决方案1】:

我构建了scala项目,然后在maven java项目中标记了一个系统依赖项。

System dependencies:

范围系统的依赖项始终可用并且不在存储库中查找。它们通常用于告诉 Maven JDK 或 VM 提供的依赖关系。

由于您的 Scala 项目不是由 JDK 或 VM 提供的,因此它不是系统依赖项。如果您有两个 Java 项目,您将遇到完全相同的问题。只需删除&lt;scope&gt;system&lt;/scope&gt;

【讨论】:

  • 我已经指定了要使用的 jar,因此,system 范围。我不认为删除 system 范围,会让我指定要使用的 jar。
猜你喜欢
  • 2019-07-02
  • 2014-01-07
  • 2019-08-17
  • 2016-11-23
  • 2019-02-18
  • 2015-05-16
  • 2017-10-14
  • 2012-06-01
  • 2011-11-05
相关资源
最近更新 更多