当我使用javac编译多个。java
文件时,出现了一些“ duplicate class”错误,但是在代码中找不到错误。有四个。java
文件,所有这些文件都在Windows中的同一文件夹中。import dx.*;
import dx.shapes.*;
class MyApp {
public static void main(String[] args) {
System.out.println("This is a test application.");
Rectangle rect = new Rectangle(10, 20);
rect.Speak();
Circle circle = new Circle(15);
circle.Speak();
Worker worker = new Worker();
worker.Speak();
}
}
package dx.shapes;
public class Rectangle {
private int x, y;
private int width, height;
public Rectangle() {
this(0, 0, 1, 1);
}
public Rectangle(int width, int height) {
this(0, 0, width, height);
}
public Rectangle(int x, int y, int width, int height) {
this.x = x;
this.y = y;
this.width = width;
this.height = height;
}
public void Speak(){
System.out.println("I'm a rectangle, width:" + this.width + ", height:" + this.height);
}
}
package dx.shapes;
public class Circle {
private int x, y;
private int radius;
public Circle() {
this(0, 0, 10);
}
public Circle(int radius) {
this(0, 0, radius);
}
public Circle(int x, int y, int radius) {
this.x = x;
this.y = y;
this.radius = radius;
}
public void Speak(){
System.out.println("I'm a circle, radius:" + this.radius);
}
}
package dx;
public class Worker {
public void Speak(){
System.out.println("I'm a worker.");
}
}
在Windows命令行中,我使用javac来编译这些源代码:
javac MyApp.java Rectangle.java Circle.java Worker.java
但是我唯一得到的是错误列表:
Rectangle.java:3: error: duplicate class: dx.shapes.Rectangle public class Rectangle { ^ MyApp.java:8: error: cannot access Rectangle Rectangle rect = new Rectangle(10, 20); ^ bad source file: .\Rectangle.java file does not contain class Rectangle Please remove or make sure it appears in the correct subdirectory of the sourcepath. Circle.java:3: error: duplicate class: dx.shapes.Circle public class Circle { ^ MyApp.java:11: error: cannot access Circle Circle circle = new Circle(15); ^ bad source file: .\Circle.java file does not contain class Circle Please remove or make sure it appears in the correct subdirectory of the sourcepath. Worker.java:3: error: duplicate class: dx.Worker public class Worker { ^ MyApp.java:14: error: cannot access Worker Worker worker = new Worker(); ^ bad source file: .\Worker.java file does not contain class Worker Please remove or make sure it appears in the correct subdirectory of the sourcepath. 6 errors
我不知道怎么了。为什么?
[当我使用javac来编译多个.java文件时,出现了一些“重复类”错误,但是在我的代码中找不到错误。有四个.java文件,所有这些文件都位于...
尝试一下:
完全编译目录中的所有文件
您只能调用主类,例如,MyApp
仅使主类javac MyApp.java
紧随java MyApp