小编use*_*odh的帖子

java.lang.ClassNotFoundException: io.quarkus.runtime.Quarkus

我正在尝试运行 quarkus 应用程序的 runner jar,它将在 http 上监听端口 9411。

以编程方式使用 UrlClassLoader,当我尝试加载它抛出的 jar 时(也使用 java -jar) 1.java.lang.ClassNotFoundException: io.quarkus.runtime.Quarkus

2.java.lang.reflect.InvocationTargetException 这里是代码片段,

        URLClassLoader loader = new URLClassLoader(
            new URL[]{ new File(<location of runner jar>).toURI().toURL()});
        Thread.currentThread().setContextClassLoader(loader);
        Class<?> mainClass = loader.loadClass("io.quarkus.runner.GeneratedMain"); 
        Method mainMethod = mainClass.getMethod("main", String[].class);
        mainMethod.invoke(null, (Object) new String[]{});
Run Code Online (Sandbox Code Playgroud)

另一个观察结果是,当我将 /lib 文件夹放在 runner jar 位置时,它会成功加载,这意味着它完全需要 lib 文件夹。

如何使我的代码仅适用于 runner jar?

java web-services http quarkus

3
推荐指数
1
解决办法
1303
查看次数

标签 统计

http ×1

java ×1

quarkus ×1

web-services ×1