Java 11 个编译器 returns "package does not exist"
Java 11 compiler returns "package does not exist"
我正在尝试重新学习一些编程技能。
我决定使用一个我最喜欢的东西——逻辑门模拟——作为学习工具。
我想将此项目设置为使用包。
我的类路径是“C:\Users\ruthm\Documents\java”
我的项目代码在目录中:
C:\Users\ruthm\Documents\java\逻辑
我正在使用 Java 11
我的 类 到目前为止是 Connector.java 和 ConnectorTest.java
连接器代码如下:
package logic;
/*
Class Connector
A connector forms the input and output of a LogicGate.
The connector "output" object of a gate can be passed to another gate to form the input.
*/
public class Connector{
private int value;
public Connector(){
value=0;
}
public Connector(int state){
value=state;
}
public void setValue(int state){
value=state;
}
public int getValue(){
return value;
}
}
连接器测试代码如下:
/* Test Case for Connector */
import logic.*;
class ConnectorTest{
public static void main (String[] args){
logic.Connector myConnector = new logic.Connector();
System.out.println("initial value: "+myConnector.getValue());
myConnector.setValue(1);
System.out.println("Set value: "+myConnector.getValue());
}
}
Connector.java 编译没有错误。
当我尝试编译 ConnectorTest.java 时,我从编译器中得到以下信息:
C:\Users\ruthm\Documents\java\logic>javac ConnectorTest.java
ConnectorTest.java:4: error: package logic does not exist
import logic.*;
^
ConnectorTest.java:9: error: package logic does not exist
logic.Connector myConnector = new logic.Connector();
^
ConnectorTest.java:9: error: package logic does not exist
logic.Connector myConnector = new logic.Connector();
^
3 errors
C:\Users\ruthm\Documents\java\logic>
我一直在遵循有关目录结构和包的指南来尝试解决这个问题,但我显然不理解某些东西。
如果我也将 ConnectorTest 声明在包逻辑中,我会得到同样的错误。
谁能抓住我的手,告诉我哪里出错了?
My project code is in the directory:
C:\Users\ruthm\Documents\java\logic
这意味着为了避免麻烦,您最好对它们使用相同的包指令。
所以如果你添加这个:
package logic;
到您的 ConnectorTest class,应该没问题,因为您没有任何其他问题。
如果您想在默认包中保留您的 ConnectorTest class,您可以将您的 ConnectorTest.java 文件移动到 C:\Users\ruthm\Documents\java 目录,但保留您的连接器 class在逻辑目录中。
我正在尝试重新学习一些编程技能。
我决定使用一个我最喜欢的东西——逻辑门模拟——作为学习工具。
我想将此项目设置为使用包。
我的类路径是“C:\Users\ruthm\Documents\java”
我的项目代码在目录中:
C:\Users\ruthm\Documents\java\逻辑
我正在使用 Java 11
我的 类 到目前为止是 Connector.java 和 ConnectorTest.java
连接器代码如下:
package logic;
/*
Class Connector
A connector forms the input and output of a LogicGate.
The connector "output" object of a gate can be passed to another gate to form the input.
*/
public class Connector{
private int value;
public Connector(){
value=0;
}
public Connector(int state){
value=state;
}
public void setValue(int state){
value=state;
}
public int getValue(){
return value;
}
}
连接器测试代码如下:
/* Test Case for Connector */
import logic.*;
class ConnectorTest{
public static void main (String[] args){
logic.Connector myConnector = new logic.Connector();
System.out.println("initial value: "+myConnector.getValue());
myConnector.setValue(1);
System.out.println("Set value: "+myConnector.getValue());
}
}
Connector.java 编译没有错误。 当我尝试编译 ConnectorTest.java 时,我从编译器中得到以下信息:
C:\Users\ruthm\Documents\java\logic>javac ConnectorTest.java
ConnectorTest.java:4: error: package logic does not exist
import logic.*;
^
ConnectorTest.java:9: error: package logic does not exist
logic.Connector myConnector = new logic.Connector();
^
ConnectorTest.java:9: error: package logic does not exist
logic.Connector myConnector = new logic.Connector();
^
3 errors
C:\Users\ruthm\Documents\java\logic>
我一直在遵循有关目录结构和包的指南来尝试解决这个问题,但我显然不理解某些东西。
如果我也将 ConnectorTest 声明在包逻辑中,我会得到同样的错误。
谁能抓住我的手,告诉我哪里出错了?
My project code is in the directory:
C:\Users\ruthm\Documents\java\logic
这意味着为了避免麻烦,您最好对它们使用相同的包指令。
所以如果你添加这个:
package logic;
到您的 ConnectorTest class,应该没问题,因为您没有任何其他问题。
如果您想在默认包中保留您的 ConnectorTest class,您可以将您的 ConnectorTest.java 文件移动到 C:\Users\ruthm\Documents\java 目录,但保留您的连接器 class在逻辑目录中。