【问题标题】:GWT Compile Error - Restlet related?GWT 编译错误 - Restlet 相关?
【发布时间】:2012-10-25 21:08:42
【问题描述】:

XXX 只是我需要保密的名字。

Compiling module com.XXX.XXX.XXX_Test
   Validating newly compiled units
      Ignored 12 units with compilation errors in first pass.
Compile with -strict or with -logLevel set to TRACE or DEBUG to see all errors.
   Scanning for additional dependencies: file:/D:/Eclipse/Indigo/Workspace/XXX%20Test/src/com/XXX/XXX/client/Restlet.java
      Computing all possible rebind results for 'com.wai.XXX.client.proxy.DonglesProxy'
         Rebinding com.XXX.XXX.client.proxy.DonglesProxy
            Checking rule <generate-with class='org.restlet.rebind.ClientProxyGenerator'/>
               [ERROR] Errors in 'file:/D:/Eclipse/Indigo/Workspace/XXX%20Test/src/com/XXX/XXX/client/proxy/DonglesProxy.java'
                  [ERROR] Line 11: No source code is available for type org.restlet.resource.ClientProxy; did you forget to inherit a required module?
               [ERROR] Unable to find type 'com.XXX.XXX.client.proxy.DonglesProxy'
                  [ERROR] Hint: Previous compiler errors may have made this type unavailable
                  [ERROR] Hint: Check the inheritance chain from your module; it may not be inheriting a required module or a module may not be adding its source path entries properly

这是当我尝试对我的项目进行 GWT 编译时控制台告诉我的内容。我不明白的是,我已将“org.restlet.jar”包含在项目的构建路径中,并在 DonglesProxy 源代码中导入了以下内容:

import org.restlet.resource.ClientProxy;
import org.restlet.resource.Put;

有人有什么想法吗?

我是 Java 和整个 Web 应用程序流程的新手,所以我的知识有点缺乏。这实际上是其他人尚未完成的项目,所以我在学习的同时尝试调试/理解其他人的代码......噩梦:(

任何帮助将不胜感激!

干杯 凯夫

【问题讨论】:

    标签: google-app-engine gwt restlet


    【解决方案1】:

    您必须将其添加到您的项目 xml 文件中。那就是 com.XXX.XXX.XXX_Test.gwt.xml 或类似的东西。 您必须在此处添加此行,

    <inherits name='org.restlet.whateverClass.xmlfilename />'
    

    这意味着您指向路径 org.restlet.whteverclass 中名为 xmlfilename.xml 的 xml 文件

    比如说,如果我使用的是 sencha ui 库 jar,我会添加,

    <inherits name='com.sencha.gxt.ui.GXT' />
    

    所以这里应该有一个名为 GXT.xml 的 xml 文件,路径为 'com.sencha.gxt.ui'

    【讨论】:

    • 这不是无关紧要的,这就是解决方案,他必须在他的gwt.xml中添加继承,如果他只是在他的类路径中有它是不够的
    • 编译错误中提到的类是错误的“org.restlet.resource.ClientProxy”;没有任何模块会包含此类;
    • 但很抱歉,如果我听起来很残酷,我现在意识到了
    【解决方案2】:

    你必须使用:

    • import org.restlet.client.resource.ClientProxy;
    • import org.restlet.client.resource.Get;
    • import org.restlet.client.resource.Post;
    • import org.restlet.client.resource.Result;

    定义代理;注意“client”部分;

    引用的导入必须是 GWT 分发的一部分;

    【讨论】:

    • 嗨,Koma,感谢您回复我。我尝试使用 org.restlet.client.resource.xxx 但我的项目不再构建并生成此错误。
    • 什么错误?您需要在您的模块中添加 ,将 GWT 版本的 restlet 添加到您的类路径中,并且可能在服务器的类路径中添加 J2EE 版本以实现服务器端;
    • 抱歉打错了,我设法解决了 GWT 编译问题,但遇到了另一个问题。您能告诉我部署 App Engine 和作为 Web 应用程序运行之间的区别吗?
    • GAE 部署 = 发送到谷歌并在他们的基础设施上运行 == 生产,作为 webapp 运行 = 本地开发;但您不应该在 cmets 中提出其他问题,而是接受并重新打开一个新问题。
    • 酷又新进论坛,下次发新问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多