我想在 jar 文件中的类中执行特定方法,该类没有 main 方法,我尝试使用 java 命令,java -cp classes.jar com.example.test.Application但出现此错误Error: Could not find or load main class反编译 jar 文件后,我在其中找到了 Application 类 有没有办法调用静态函数jar 文件中的 Application 类内部?
浮云间
浏览 61回答 1
1回答
呼如林
你可以使用Jshell:$ jshell --class-path ~/.m2/repository/org/apache/commons/commons-lang3/3.9/commons-lang3-3.9.jar| Welcome to JShell -- Version 11.0.4| For an introduction type: /help introjshell> org.apache.commons.lang3.StringUtils.join("a", "b", "c")$1 ==> "abc"或者使用 main 创建一个 java 类,编译它并使用 java 运行:Test.java:class Test { public static void main(String[] args) { String result = org.apache.commons.lang3.StringUtils.join("a", "b", "c"); System.out.println(result); }}编译并运行:$ javac -cp /path/to/jar/commons-lang3-3.9.jar Test.java$ java -cp /path/to/jar/commons-lang3-3.9.jar:. Testabc