如何从包外导入文件



如何从包外导入文件?示例:

// this is a.java
package user.code.gui;
void method_a(){
// do something
}

// this is b.java
package user.code;
void method_b(){
// do something
}

// this is c.java
package user.extensions;
void method_c(){
// do something
}

如果我使用";导入c";在文件a.java中,它找不到此文件,因为它在另一个包中。问题是,如何在文件a.java中导入文件c.java?

您需要在编译期间以及运行时提供其他包;这是不同的东西,但它们都有类路径的概念。

Java总是通过将类型名称转换为目录名称来查找事物;在CCD_ 2中查找CCD_。

它扫描类路径中的每个条目。类路径条目可以是目录,也可以是jar文件。

构建系统(maven、gradle等(和IDE(eclipse、intellij等(-使其易于配置,并通常为您处理。你应该使用这些工具;99%的java项目都是由IDE和/或构建工具编译的。

一旦您开始拥有多个包,javac就会变得难以处理。

但是,如果你必须使用命令行:

您的目录结构:

/Users/Cflowe/workspace/MyAwesomeProject/src/user/code/gui/GuiClass.java
/Users/Cflowe/workspace/MyAwesomeProject/src/user/code/Whatever.java

等等。编译:

cd /Users/Cflowe/workspace/MyAwesomeProject
mkdir bin
javac -sourcepath src -d bin src/user/code/Whatever.java src/user/code/gui/GuiClass.java andSpecifyEveryOtherFileByHandHere
java -cp bin com.foo.Main

最新更新