2015-05-04 21 views
1

当我尝试运行我的Java应用程序时,它无法在我指定的目录中找到主类。当我在命令中指定目录时出现Java类路径问题

我的应用程序在该目录下:

C:\Users\Cristian\git\tranquil-crag-4851

我的主类是在这个目录下:

C:\Users\Cristian\git\tranquil-crag-4851\target\classes\com\example

我的主类称为

Main.class

当我运行此命令

java -cp target/classes:target/dependency/* com.example.Main

从目录

C:\Users\Cristian\git\tranquil-crag-4851\

结果我得到的是:

中找不到com.example.Main主类

我的课程PATH变量设置为JAVA_HOME\lib。有人可以向我解释如何解决这个问题吗?

+0

你有在你的主类顶部的包声明? – merlin2011

+0

“Main”类中的包声明是什么? –

+0

我有这个“package com.example;” –

回答

2

分隔符:适用于Unix。您应该在Windows上使用;。 在这种情况下,我不确定在Windows上使用正斜杠。尽量用反斜杠代替,即

java -cp target\classes;target\dependency\* com.example.Main

如果您使用的是Java 1.6或更高版本这应该工作。我的意思是*以前版本的java不支持。

如果出现问题,请检查路径。 进入目录你在哪里运行应用程序,类型

dir target\classes 
dir target\dependency\ 

,并查看这些命令的输出为预期。

+0

这工作。非常感谢您的帮助。祝你今天愉快!!! –

+0

谢谢你太多了。标记答案是正确的,并且增加投票就足够了。 :) – AlexR