【发布时间】:2011-05-17 22:10:45
【问题描述】:
我创建了一个基于 Maven2 的 GWT 应用程序,将其导入 Eclipse,当我作为 GWT Web 应用程序进行调试时,Eclipse 调试会话因 FileNotFoundException 而暂停。它显示一个窗口说:源附件不包含文件 URLClassPath.class 的源。
我已经完全清除了 Eclipse 工作区(和 .metadata 子目录),创建/导入了一个空白项目,同样的事情发生了。如果我执行 Run As GWT Web 应用程序,它可以正常工作(带有几个警告)。我需要调整什么才能让它在调试模式下工作?
重现问题的步骤
1) 创建应用程序
webAppCreator -noant -maven -XnoEclipse -out MyApp com.example.MyApp
2) 导入和更改设置
应用程序被导入 Eclipse 工作区,在设置中选中“使用 Google Web Toolkit”复选框。
选中“此项目有一个 WAR 目录”。 WAR 目录设置为 src/main/webapp。 “从此目录启动和部署”未选中。
3) 调试为
现在按下调试工具栏按钮,选择“GWT Web Application”,并选择target/www 作为WAR 目录。你应该看到同样的问题。 Debug 窗格中的调用堆栈包含以下内容:
MyApp.html [Web 应用程序]
com.google.gwt.dev.DevMode 在 本地主机:51620 线程 [主] (暂停(例外 FileNotFoundException))
URLClassPath$JarLoader.getJarFile(URL) 线路:644
URLClassPath$JarLoader.access$600(URLClassPath$JarLoader, 网址)行:540
URLClassPath$JarLoader$1.run() 行: 607
AccessController.doPrivileged(PrivilegedExceptionAction) 行:不可用 [本机方法]
URLClassPath$JarLoader.ensureOpen() 线路:599
URLClassPath$JarLoader.(URL, URL流处理程序, HashMap) 行:583
URLClassPath$JarLoader$3.run() 行: 810
AccessController.doPrivileged(PrivilegedExceptionAction) 行:不可用 [本机方法]
URLClassPath$JarLoader.getResource(String, 布尔值,设置)行:806
URLClassPath$JarLoader.getResource(String, 布尔值)行:765
URLClassPath.getResource(字符串, 布尔值)行:169
URLClassLoader$1.run() 行:194
AccessController.doPrivileged(PrivilegedExceptionAction, AccessControlContext) 行:不是 可用 [本机方法]
Launcher$AppClassLoader(URLClassLoader).findClass(String) 线路:190
Launcher$AppClassLoader(ClassLoader).loadClass(String, 布尔值)行:307
Launcher$AppClassLoader.loadClass(String, 布尔值)行:301
Launcher$AppClassLoader(ClassLoader).loadClass(String) 行:248 C:\程序 文件\Java\jdk1.6.0_21\bin\javaw.exe (2010 年 11 月 28 日 15:28:32)
版本和插件
GWT:2.1。
日食:太阳神 (3.6)。
Maven:2.2.1。
JRE/JDK:JDK 1.6.0.21。
适用于 Eclipse 3.6 版本 1.4.0.v201010280102 的 Google 插件。
Maven Integration for Eclipse (m2eclipse) 版本 0.10.2.20100623-1649(已配置为指向 Maven 2.2.1 环境,而不是使用嵌入式 Maven3“实例”)。
【问题讨论】:
-
您是否已将 M2eclipse 配置为下载所有工件的源代码?
-
我没有这样做,但现在有了。没有什么不同。
标签: java eclipse maven-2 gwt maven