java - Scala 和 Eclipse : Export as Jar File, 但找不到 main 方法

标签 java eclipse scala jar

我在将 scala 项目导出为 .jar 文件然后使用 cmd 中的命令运行它时遇到问题。该文件采用端口号作为其参数,因为它在服务器和客户端之间建立 TCP 连接。共有三个文件:

  • Engine.scala = 包含 main 方法的对象:启动一个 Web 服务器(等待来自 html 文件的输入查询并将其传输到文本处理服务器)和一个文本处理服务器(这将获取查询并搜索文本文件的倒排索引(爱丽丝梦游仙境;)并返回文本文件中出现查询项的所有行)。

  • TextProcessingServer:执行查询搜索

  • WebServer:WAITING查询输入

当我在 Eclipse 中启动它并传递端口号(在我的例子中为 8090)时,一切正常,我可以使用网站查询我的服务器。

但是,如果我尝试导出它,它就不再起作用了。要将其导出到 jar,我执行以下操作:

  1. 在 Eclipse 中,我通过以下方式导出它:导出 -> Java -> JAR 文件 -> 1234.jar 并选中“导出已检查项目的所有输出文件夹”和“导出 Java 源文件和资源”。

  2. 在命令行中,我输入: java -cp 1234.jar:lib/scala-library.jar 分配1.Engine 8090

现在我收到以下错误消息:

Error: Could not find or load main class assignment1.Engine

使用的版本:

Scala IDE build of Eclipse SDK (Version Indigo)

Build id: 3.0.1-vfinal-20130718-1727-Typesafe

有人可以帮我吗?我几乎尝试了互联网上建议的所有内容,例如调整 list 等,但似乎没有任何效果。它只是找不到 main 方法:(

当我在 Eclipse 中运行它时,我已经注意到我无法选择“作为 Scala 应用程序运行”,我只能将它作为 Java 应用程序运行。不知道这是否重要......

非常感谢您的帮助!

最佳答案

您来自分布式系统 HS2013,对吗? :-D

问题是,在命令行中您输入 lib/scala-library.jar 但您没有在 jar 所在的同一文件夹中提供 scala 库。 如果您的 jar 位于桌面上,则需要将文件夹 lib 从 scala 安装复制到桌面,或者只需提供 scala-library.jar(而不是键入 scala-library.jar 而不是 lib/scala-library.jar)。 如果您使用的是 Windows,则应将 : 替换为 ;,如下所示:

java -cp 1234.jar;lib/scala-library.jar assignment1.Engine 8090

它可能找不到您的文本文件,因此您也必须将其复制到同一文件夹(例如桌面)。

关于java - Scala 和 Eclipse : Export as Jar File, 但找不到 main 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19464196/

相关文章:

java - Android应用程序备份和恢复?

java - 使用 Java Spring 3.0 @NumberFormat 注解

java - 使用 Java 以编程方式读取动态创建的 RSS 提要

java - 线程 "main"java.lang.NoClassDefFoundError : org/apache/commons/lang/builder/CompareToBuilder 中出现异常

c - 如何检查我的嵌入式电脑上是否安装了 gdb 服务器?

python - 在eclipse中用python编程时如何使用simplegui模块?

用于删除(非 Javadoc)@see 注释的正则表达式?

c++ - 如何使用类型级函数动态创建静态类型?

Scala-redis 订阅 * 但收到零条消息

list - 如何以功能样式从列表中添加选择性行的值?