我正在尝试创建一个自定义包来放置我的一些类,但是当我尝试将它导入到我的某个程序中时,它显示找不到它。
这是我正在尝试编译的文件,但它显示找不到该包
import project_euler.Fibonacci;
public class test {
public static void main(String[] args) {
Fibonacci fib = new Fibonacci();
System.out.println(fib.getTerm(10));
}
}这是斐波那契类
package project_euler;
public class Fibonacci {
public int getTerm(int n) {
if (n < 0 || n > 46) {
throw new IllegalArgumentException();
} else {
return (n > 1) ? getTerm(n-1) + getTerm(n-2) : n;
}
}
}这是我在尝试编译时得到的错误
test.java:1: error: package project_euler does not exist
import project_euler.Fibonacci;
^
test.java:6: error: cannot access Fibonacci
Fibonacci fib = new Fibonacci();
^
bad source file: C:\Users\dhout_000\Documents\Project Euler\project_euler\Fibonacci.java
file does not contain class Fibonacci
Please remove or make sure it appears in the correct subdirectory of the sourcepath.
2 errors我的目录设置是
> My Documents
> Project Euler
- test.java
> project_euler
- Fibonacci.class
- Fibonacci.java我就是想不出问题出在哪里
发布于 2012-11-30 17:29:17
确保未设置CLASSPATH环境变量。
从包层次结构的基目录编译并运行代码。
C:\My Documents\Project Euler> javac project_euler\Fibonacci\*.java
C:\My Documents\Project Euler> java project_euler.Fibonacci.test您还可以使用javac和java命令的-cp选项显式指定类路径。确保包含包层次结构(C:\My Documents\Project Euler)的基目录。在C:\My Documents\Project Euler中,您可以通过指定. (当前目录)来完成此操作
C:\My Documents\Project Euler> javac -cp . project_euler\Fibonacci\*.java
C:\My Documents\Project Euler> java -cp . project_euler.Fibonacci.test注意:根据常见的Java命名约定,您不应该在名称(包、类、方法名)中使用下划线,包名应该是小写的,类名应该以大写字母开头。将包重命名为projecteuler.fibonacci (当然,您还需要重命名文件夹),并将类test重命名为Test。
https://stackoverflow.com/questions/13641696
复制相似问题