gpt4 book ai didi

java - 对使用包编译基本的java测试程序感到困惑

转载 作者:行者123 更新时间:2023-12-02 08:09:31 24 4
gpt4 key购买 nike

这是我的问题的后续:

error in java basic test program

这仍然让我困惑。所以具体问题是:

我已经完成了包和目录。说 com.learn.java.mypackage

$ pwd
.../com/learn/java/mypackage

这里我想在同一个包中创建一个测试程序并执行它。

$cat TestPackage.java

package com.learn.java.mypackage;

public class TestPackage
{

public static void main(String args[])
{
System.out.println("Hello World\n");
}
}

$ javac TestPackage.java
// runs file

$ Java TestPackage


Exception in thread "main" java.lang.NoClassDefFoundError: TestPackage (wrong name: com/learn/java/TestPackage)

如果java运行时想要确保属于一个包的文件位于同一个命名目录中,这里就是这样。那为什么它还是会骂人呢?

最佳答案

你应该这样做java com.learn.java.mypackage.TestPackagecom 的父文件夹中.

所以如果 com的完整路径是/my/project/folder/com/...你应该打电话java com.learn.java.mypackage.TestPackage来自/my/project/folder

从聊天中粘贴:

您可以在任何地方使用java -cp /my/project/folder a.b.c.ClassName ,它告诉 java寻找类(class)ClassName在包 a.b.c 中找到,并且应该在路径: /my/project/folder 中搜索包。

关于java - 对使用包编译基本的java测试程序感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7661675/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com