java - Java包和/或文件结构编译问题

标签 java compiler-errors package packages

大家早上好。

因此,我试图通过一个包结构来编译一个非常简单的Java程序,其中有两个Java文件。我的文件夹结构是:
Prac/Java/LL/people/src/coreservlets/
这两个文件是PersonTest.java(这是主要文件)和Person.java

PersonTest.java文件如下:

package coreservlets;

public class PersonTest {
public static void main (String[] args) {
    Person p = new Person("Jane", "Smith");
}
}

和Person.java进行如下操作:
package coreservlets;

public class Person {
public String firstName, lastName;

public Person(String initialFirstName,
              String initialLastName) {
    this.firstName = initialFirstName;
    this.lastName = initialLastName;
}

public String getFullName() {
    return(firstName + " " + lastName);
}

}

当我尝试编译时,它告诉我找不到符号Person。我已经检查了多个论坛条目,以确保我正确地执行了包结构,但我不知道是什么问题。我究竟做错了什么?

最佳答案

问题是需要为每个命令(javac和java)设置类路径:

遵循以下步骤

instead of going to subpackage, compile Person.java from the top_level:

$javac -cp . Prac/Java/LL/people/src/coreservlets/Person.java

compile PersonTest.java in the same way:

$javac -cp . Prac/Java/LL/people/src/coreservlets/PersonTest.java

run the file using the class path also:

$java -cp . Prac/Java/LL/people/src/coreservlets/PersonTest

引用:http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html

关于java - Java包和/或文件结构编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46715943/

相关文章:

java - 编译错误 :missing return statement

java - 为什么我得到 "non-static variable this cannot be referenced from a static context"?

java - 如何解决Maven项目中的central.maven.org : Unknown host central. maven.org?

boost - Homebrew 软件包之间缺少链接

Java音频播放解决方案?

java - 使用 REST 端点返回字符串

java - 如何使用代理解析从 SimpleJpaRepository<T,ID> 对象中获取存储库接口(interface)对象

compiler-errors - 大多数C/C++编译器如何为数组创建 token ?

python - 在python中组织源代码

java - 同时显示两个不同 Activity 的两个倒计时器