首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用JRE 10运行简单的Java应用程序

无法使用JRE 10运行简单的Java应用程序
EN

Stack Overflow用户
提问于 2018-07-17 08:14:21
回答 2查看 573关注 0票数 4

刚尝试在JRE 10中运行我的应用程序(自从9最近被杀以来)。下面的错误表明它需要ant.jar,但这完全是胡说八道。应用程序不需要运行 ant,它可以很好地工作在所有JRE的所有返回到7的地方。我遗漏了什么?为什么运行时需要一些完全无关的东西?

代码语言:javascript
复制
java.lang.NoClassDefFoundError: org/apache/tools/ant/taskdefs/Execute
    at org.apache.commons.configuration.EnvironmentConfiguration.extractProperties14(EnvironmentConfiguration.java:160)
    at org.apache.commons.configuration.EnvironmentConfiguration.<init>(EnvironmentConfiguration.java:77)
    at org.apache.commons.configuration.interpol.EnvironmentLookup.<init>(EnvironmentLookup.java:51)
    at org.apache.commons.configuration.interpol.ConfigurationInterpolator.<clinit>(ConfigurationInterpolator.java:386)
.......
Caused by: java.lang.ClassNotFoundException: org.apache.tools.ant.taskdefs.Execute
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-17 11:58:51

您似乎依赖于的一个相当老的版本。我在版本1.10和2.2中都找不到上面提到的行。

如果要详细说明优先排序版本的来源,我想您将看到类似于super(new HashMap<String, Object>(System.getenv()));extractProperties14(..) (我在上面提到的版本中找不到的)一些由于某种逻辑而访问org.apache.tools.ant.taskdefs.Execute的代码。

因此,我建议更新依赖关系的版本,或者,如果不允许这样做,则删除导致错误的SystemProperty,并且在默认情况下由JRE提供。

票数 3
EN

Stack Overflow用户

发布于 2018-07-17 11:59:29

我似乎已经找到了答案,但在这一点上可能会提出更多的问题。嗯,至少这个应用程序看起来像以前一样起作用了。违犯的依赖项是commons-configuration-1.7.jar.一旦升级到commons-configuration-1.10.jar,,一切都好起来了。或者看起来。坦白地说,我不知道如何控制最近java世界升级的进程.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51376379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档