Java 如何在ubuntu中将目录添加到类路径?
假设我有一个目录“Animal”(不带引号),其中有java类。在Linux中如何将该目录添加到类路径?我的意思是,假设我想使用其他文件夹中“Animal”目录中的类文件,那么我需要将“Animal”添加到类路径中。怎么做 另外,假设Animal目录有几个子目录,每个子目录也有包含java类文件的目录,那么如何将每个子目录添加到java包中呢 编辑:假设我在Ubuntu中有两个文件夹,比如下载和文档。现在在下载中,我创建了一个名为“animal”的文件夹,其中有一个名为Dog.java的类。现在在Documents文件夹中,我创建了一个main方法,在这个方法中,我尝试创建一个“Dog”类的实例。我想通过在下载文件夹中导入包“animal”来实现这一点。怎么做?我们知道,如果我们想使用java中的一些预构建包,那么我们导入该包以使用该包中的类。类似地,假设我想导入我自己的包,我需要做什么?当我编写import和compile时,它会说包“animal”不存在。所以我所做的是,它不会给出编译错误。有人可以通过给出答案来详细说明Java 如何在ubuntu中将目录添加到类路径?,java,oop,package,Java,Oop,Package,假设我有一个目录“Animal”(不带引号),其中有java类。在Linux中如何将该目录添加到类路径?我的意思是,假设我想使用其他文件夹中“Animal”目录中的类文件,那么我需要将“Animal”添加到类路径中。怎么做 另外,假设Animal目录有几个子目录,每个子目录也有包含java类文件的目录,那么如何将每个子目录添加到java包中呢 编辑:假设我在Ubuntu中有两个文件夹,比如下载和文档。现在在下载中,我创建了一个名为“animal”的文件夹,其中有一个名为Dog.java的类。现在
在问这个问题之前,我做了很多工作,当我不成功时,我终于问了这个问题。要详细解决这个问题,请使用一些代码-文件夹结构是:
~ (user folder)
~/Documents
~/Documents/useanimal
~/Documents/useanimal/UseDog.java
~/Downloads
~/Downloads/animal
~/Downloads/animal/Dog.java
下面是这两个类的代码。汇编:
cd ~/Downloads
javac animal/Dog.java
cd ~/Documents
javac -cp ~/Downloads useanimal/UseDog.java
要运行:
cd ~
java -cp Documents:Downloads useanimal.UseDog
它将输出
UseDog:main
Dog created
代码: animal/Dog.java
package animal;
public class Dog {
public Dog() {
System.out.println("Dog created");
}
}
package useanimal;
import animal.Dog;
public class UseDog {
public static void main(String[] args) {
System.out.println("UseDog:main");
Dog dog = new Dog();
}
}
useamal/UseDog.java
package animal;
public class Dog {
public Dog() {
System.out.println("Dog created");
}
}
package useanimal;
import animal.Dog;
public class UseDog {
public static void main(String[] args) {
System.out.println("UseDog:main");
Dog dog = new Dog();
}
}
@我以前访问过它,如何使用终端。我不明白你应该调用
java-cp animal:anotherFolder:etc.main.ClassName
。文件夹名称由:
分隔。调用java的“普通”方法是JavaMyClass
,它将调用指定类中的main
方法。-cp
选项允许您将文件夹添加到类路径。文件夹名称可以是相对的(相对于您运行java
的工作文件夹),也可以是绝对的检查@Daniele如何在类路径中添加我的文件夹或包,这样当我使用来自其他目录的import语句时,就可以确定我在说什么?