2014-04-28 69 views
0

我试图在命令行中使用依赖关系运行我的java类。我使用IntelliJ Idea 13从我的项目中构建工件。我有一个主要的类说“Main.java”,并且在构建之后,我得到了一个像mytest.jar这样的jar文件。 Main.java的完全限定名称就像“test.Main”打包成jar,运行在cmd中,但找不到主类

但是,当我尝试使用“java mytest.jar”运行它时,它抱怨说无法找到主类mytest.jar。

我检查了jar中的文件,好像我得到了所需的所有依赖关系,而MANIFEST.MF中的主类似乎也没问题。实际上,如果我将jar解压缩到“mytest”文件夹中,并尝试在其中运行“java test.Main”,我的工作就很好。

我的jar文件是这样的:

mytest的

--test

---- Main.class

--meta-INF

- ---MANIFEST.NF

--org .. //依赖

我的MANIFEST.MF是这样的:

清单-版本:1.0

主类:test.Main

那么什么是你的建议?

更新:主类MANIFEST.MF是test.Main,我在这个问题中使用了一个简单的例子,忘记更改内容,对不起。

+1

你如何在命令行中执行它?在这里检查类似问题的答案http://stackoverflow.com/questions/5774970/run-jar-file-in-command-prompt – Omoro

+3

如果你的主类的完全限定名是'test.Main',为什么你指定' example.SimpleServer'在你的清单中?只需修理您的清单... –

回答

1

在您的清单中,Main-Class属性应为test.Main。我还没有使用过Idea,但是例如在Eclipse中,您可以指定Run配置文件将生成的可执行文件。