我有两个.java的文件.我想用一些用户参数运行♪ClassB.Java♪.然而,它依赖于编译ClassA,所以我可以从main()运行hello()方法

假设它们都在相同的src目录中,并且我希望在运行java时将.jar包含在类路径中.

以下作品:

javac -cp lib/*.jar src/*.java

但是,在try 运行(使用相同的类路径)时: java -cp lib/*.jar src/ClassB

我收到Could not find or load main class ClassB英镑

lib
 |---file.jar
src
 |---♪类A.Java♪
 |---♪ClassB.Java♪

♪类A.Java♪

public class ClassA {
        String item;

        public ClassA(String i) {
                item = i;
        }

        public void hello() {
                System.out.printf("Hello %s from Class A!\n", item);
        }
}

♪ClassB.Java♪

public class ClassB {
        String item;

        public ClassB(String i) {
                item = i;
        }

        public void hello() {
                System.out.printf("Hello %s from Class B!\n", item);
        }

        public static void main(String[] args) {

                ClassB cb = new ClassB(args[0]);
                ClassA ca = new ClassA(args[1]);

                cb.hello();
                ca.hello();
        }
}

推荐答案

  1. Compile the code using the following command -- javac ClassA.java ClassB.java.
    • ClassA.classClassB.class应该位于同一目录中.如果不是,lmk和我可以更改答案.
  2. 使用以下命令运行代码--java ClassB.不要在最后加.java,只要加ClassB就行了.

应该可以如果没有的话,我会很高兴的.

EDIT--似乎是OP编辑了他们的问题.我还没有更新我的答案来匹配更新后的问题,但如果有人觉得我应该这样做的话,我可以.

Java相关问答推荐

编译期间错误(Java 0000)Android .Net MAUI

Java模式匹配记录

根据对象和值的参数将映射<;T、值&>转换为列表<;T&>

编译多个.Java文件并运行一个依赖于用户参数的文件

在Java中,在单个逻辑行中连接列表和单个元素的正确方法是什么?

Com.example.service.QuestionService中的构造函数的参数0需要找不到的类型为';com.example.Dao.QuestionDao;的Bean

通过移动一个类解决了潜在的StubbingProblem.它怎麽工作?

使用OAuth 2.0资源服务器JWT时的授权(授权)问题

如何在一行中使用Dijkstra中的Java Stream

如何在Spring Boot中创建可以将值传递给配置的&Enable&Quot;注释?

如何在太阳系模拟器中添加月球?

有谁能帮我修一下这个吗?使输出变得更加整洁

JavaFX:无论何时显示应用程序,如何更改组件/ node 位置?

具有多个模式的DateTimeForMatter的LocalDate.parse失败

如何对存储为字符串的大数字数组进行排序?

JavaFX,GridPane:在GridPane的列中生成元素将保持所有列的宽度

接受类及其接口的Java类型(矛盾)

读取ConcurrentHashMap中的可变对象

转换为JSON字符串时,日期按天递减-Java

java.util.LinkedList()是如何成为MutableList的实例的?