【发布时间】:2012-11-30 18:13:18
【问题描述】:
我正在尝试创建一个自定义包来放置我的一些类,但是当我尝试将它导入到我的一个程序中时,它说找不到。
这是我要编译的文件,但它说找不到包
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
我似乎无法弄清楚问题是什么
【问题讨论】:
-
为什么你的
.java文件在包文件夹中?把它移到外面。并重新编译。 -
您从哪个目录运行编译器?您应该从
C:\Users\dhout_000\Documents\Project Euler运行它或相应地设置类路径。在我看来,您是从其他地方运行它,所以编译器误解了您的包结构(一开始并不是很好,但这是另一个问题)。