Ant无法在Eclipse Kepler中工作(Java虚拟机启动器 - 发生了Java异常)

Pin*_*azz 10 java eclipse ant eclipse-kepler

我最近升级到Eclipse Kepler,并且遇到了Ant的问题.我正在使用Java虚拟机启动器 - 无论我在构建文件中选择哪个目标,都会发生Java异常错误.

我尝试重新安装我的JDK,但仍然得到错误.我正在运行JDK的7u25版本.我将JAVA_HOME环境变量设置为C:\Progra~1\Java\jdk1.7.0_25,所以我不认为这是问题所在.还有什么可能导致这个问题?

编辑:我也在命令行测试了ant,它运行得很好.这是开普勒的一个错误吗?

编辑2:这是错误的日志:

org.eclipse.core.runtime.CoreException: Could not find one or more classes: "org.apache.tools.ant.BuildLogger". Please check the Ant classpath.
at org.eclipse.ant.core.AntRunner.problemLoadingClass(AntRunner.java:467)
at org.eclipse.ant.core.AntRunner.run(AntRunner.java:380)
at org.eclipse.ant.internal.launching.launchConfigurations.AntLaunchDelegate.runInSameVM(AntLaunchDelegate.java:307)
at org.eclipse.ant.internal.launching.launchConfigurations.AntLaunchDelegate.launch(AntLaunchDelegate.java:260)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:700)
at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.launchBuild(ExternalToolBuilder.java:181)
at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.doBuildBasedOnScope(ExternalToolBuilder.java:169)
at org.eclipse.core.externaltools.internal.model.ExternalToolBuilder.build(ExternalToolBuilder.java:88)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:726)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:239)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:292)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:295)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:351)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:374)
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:514)
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:423)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:830)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1222)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)

Caused by: java.lang.NoClassDefFoundError: org/apache/tools/ant/BuildLogger
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.eclipse.ant.core.AntRunner.run(AntRunner.java:324)
... 24 more

Caused by: java.lang.ClassNotFoundException: org.apache.tools.ant.BuildLogger
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at org.eclipse.ant.internal.core.AntClassLoader.findClass(AntClassLoader.java:54)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 29 more
Run Code Online (Sandbox Code Playgroud)

San*_*alp 10

这很可能是由于eclipse使用的Ant版本不同.请在eclipse中更新Ant_Home.窗口 - >首选项 - > Ant - >运行时 - >类路径 - >单击Ant Home ..并尝试找到最新版本的Ant目录位置.这对我有用:)

  • 如果您在不更新Eclipse中的"Ant Home"的情况下将ant移动到其他目录,则会出现OP错误.这个答案有助于解决这个问题. (2认同)

小智 7

我有同样的问题,它让我花了一段时间来弄清楚解决方案是什么.我按照本页和类似页面上的所有建议; 什么都没有!我卸载并安装了jdk,eclipse,重置我的项目,我强制Eclipse清除它的参数,...; 没有成功.

最后修复我的问题的是删除工作区文件夹中的.metadata目录.我不知道eclipse在那里保留了什么,但删除.metadata direcotry导致Eclipse重新启动每个设置.我确实需要重新导入我的项目结构.它再次像魅力一样工作.没有模糊的'发生异常'错误消息.


dis*_*ake 0

Eclipse 可能没有定义正确的 JAR。您是否尝试添加 Ant 所需的tools.jar?

首选项 > Ant > 运行时

在此输入图像描述