尝试使用java包时出现命令行错误
我在学校学习java软件包,我能够在netbeans上完美地创建和使用我的软件包,但不能从lubuntu命令行完成。我得到一个错误:无法找到或加载主类。下面是代码,但我知道这不是问题所在,因为它在netbeans中工作得非常好尝试使用java包时出现命令行错误,java,linux,Java,Linux,我在学校学习java软件包,我能够在netbeans上完美地创建和使用我的软件包,但不能从lubuntu命令行完成。我得到一个错误:无法找到或加载主类。下面是代码,但我知道这不是问题所在,因为它在netbeans中工作得非常好 package animals; public class MammalInt implements Animal { public void eat() { System.out.println("Mammal
package animals;
public class MammalInt implements Animal
{
public void eat()
{
System.out.println("Mammal eats");
}
public void travel()
{
System.out.println("Mammal travels");
}
public static void main(String args[])
{
MammalInt m = new MammalInt();
m.eat();
m.travel();
}
}
package animals;
interface Animal
{
public void eat();
public void travel();
}
我首先编译Animal.java
,并将Animal.class
文件放入目录中
动物。然后我编译
maimalaint.java
。如果我不将Animal.class
文件放在animals目录中,它将不会编译malemaint.java
。在我将这两个类文件都放入animals目录后,我执行了JavaAnimals/Madamint
并得到错误:找不到或加载主类。我还有doe javamaimalaint
,得到了相同的错误。这真令人沮丧。请提供帮助。编译(一组文件)时,您需要使用路径。因此请使用/
javac animals/*.java
运行Java类时,需要指定类的Java名称
在您的情况下,这是按如下方式进行的:
java animals.MammalInt
这表示您希望在包animal
中包含类哺乳动物int
。根据您的安装情况,您还需要将当前目录添加到类路径(这是java查找.class
文件的地方),从而导致:
java -cp . animals.MammalInt
请注意,您可以从源代码树的根目录运行所有命令。这意味着包含包目录的目录。因此,如果您有以下目录:
project/
project/animals/
project/animals/Animal.java
然后从project/
目录运行命令。显示如何调用java
语句。在命令行上输入什么?相对于包含类文件的目录,当前工作目录是哪个?类文件在我的当前工作目录中leo@leo-VirtualBox:~/Documents/Spring2015/CSC220/Practice/Packages/animals$java animals/emdamenti我不知道答案,但只是一个提示,您不必说公共接口中的方法是,因为它的默认值是public,所以void eat();无效旅行();已经足够了。这是一个测试
只是检查如何将我的评论格式化为代码