adr*_*on3 2 java scala compilation
我有一个Scala项目,我想将其导出为jar.
*1.起初我尝试为项目创建一个Java类作为入口点
public class JMain {
public static void main(String[] args) {
System.out.println("Java main calling Scala main");
SMain.main(new String[] {""}); //SMain.main is the actual *main*
Run Code Online (Sandbox Code Playgroud)
从Eclipse启动时,这工作得很好,但是当我将它导出为jar时,它会给我18个例外左右.我现在知道如何复制然后Eclipse设法启动它的"环境",我很确定它依赖于Scala已经在我的系统上的事实 - 我需要一个自包含的jar,其中包含所有内容.
*2.我的第二次尝试包括尝试lach在此提出的建议如何从Eclipse部署Scala项目? 即:
public class JMain {
public static void main(String[] args) {
System.out.println("Java Main");
List<String> argList = new ArrayList<String>();
argList.add("fully.qualified.ClassName"); //???
for (String s : args) argList.add(s);
scala.tools.nsc.MainGenericRunner.main(argList.toArray(new String[0]));
Run Code Online (Sandbox Code Playgroud)
这次它甚至不会从Eclipse运行,尽管从着名的NoClassDefFoundError开始它只提供了6个左右的异常.我有一种感觉,我没有得到full.qualified.ClassName正确.*3.如果主要的 Scala类被称为"Dis.scala"并且位于包"pack"中,那么full.qualified.ClassName不应该是"pack.Dis"吗?
我正在使用Jre 1.6和Scala 2.9.2编辑:我已经包含了所有外部导入的jar,甚至scala-library.jar - 一切都很好并且装在jar中
PS我不熟悉Ant或Maven或Sbt.我只想让我的Scala项目jared - 如果可能的话,不要陷入毛茸茸的事情.
And*_*ert 10
这对我有用:1.创建scala项目2.创建Wrapper java项目3.将scala-library.jar添加到java项目构建路径中.
所以你只需要第3步,因为其余的看起来与我的相似.然后你可以愉快地使用:java - jar file.jar
编辑:如何使用Scala - Eclipse IDE创建一个包含Scala/Code的JAR文件,该文件可由另一个Java项目使用.
最后,您将获得一个完整的打包JAR,您可以像这样使用:
java - jar wrapped.jar
| 归档时间: |
|
| 查看次数: |
7273 次 |
| 最近记录: |