【问题标题】:The project XXX does not have any GWT SDKs on its build path项目 XXX 在其构建路径上没有任何 GWT SDK
【发布时间】:2012-01-22 08:39:30
【问题描述】:

有时,当我在我的 MacOSX Lion 上启动 Eclipse(适用于 Web 开发人员的 Java EE IDE,Indigo SR 1)时,我的 GWT (2.4.0)项目最初无法编译

Eclipse 在“问题” 部分显示以下消息:

The project XXX does not have any GWT SDKs on its build path

这里列出了一些有时可行的半解决方案(我通常按此顺序尝试):

  1. Project > Clean
  2. 删除 GWT SDK 并将其重新添加到构建路径。
  3. 重启机器。

非常欢迎任何有关防止问题再次发生的帮助。

【问题讨论】:

    标签: eclipse macos gwt build


    【解决方案1】:

    我遇到了与上述相同的问题。但没有一个解决方案奏效。

    起作用的是将 GWT SDK 移动到构建路径中的其他 GWT 依赖项之上。请参阅以下博客(由我今天的个人英雄撰写): Grant Little's Blog

    【讨论】:

    • 需要注意的是,这个答案只适用于Maven用户。
    • 在 eclipse 中将 GWT SDK 移动到顶部时为我工作 >> java build path >> order and export
    • 在没有 Maven 的普通 Eclipse App Engine 项目中为我工作
    • 在 Gradle Eclipse 项目中为我工作,没有 Maven。
    【解决方案2】:

    我认为问题的出现是因为 Eclipse 有一些关于可用/链接 GWT 的过时设置

    因此,在the answer by Chris Cashwell 的基础上,我建议如下:

    1. 从您的构建路径中删除所有 GWT。(您的构建路径上可能有多个 GWT。)
    2. 删除所有在 Eclipse 中链接的 GWTProject>Properties>Google>Web Toolkit>Configure SDKs, .
    3. 仅添加最新的 GWT,并将其设为默认值。

    编辑:有时,我仍然需要Project > Clean,但现在这种情况很少见。

    【讨论】:

      【解决方案3】:

      我尝试了上述方法,但还需要做更多:

      从上面:

      • 从我的项目中删除 GWT SDK
      • 从 Eclipse 中删除所有 GWT SDK
      • 下载新的 GWT SDK (2.5.0)
      • 将其添加到 Eclipse 和我的项目中

      我做了什么额外的:

      • 编辑我的项目的 .classpath 文件
      • 将 GWT 的类路径条目移动到 'src' 下方
      • 保存 .classpath 文件
      • 关闭项目
      • 打开项目

      这对我有用。在构建路径 GUI 中移动它似乎对我不起作用!

      所以,我的 .classpath 的开头最终看起来像这样:

      <?xml version="1.0" encoding="UTF-8"?>
      <classpath>
          <classpathentry kind="src" path="src"/>
          <classpathentry kind="con" path="com.google.gwt.eclipse.core.GWT_CONTAINER"/>
          etc...
      

      【讨论】:

        【解决方案4】:

        Project-&gt;Properties-&gt;Java Build Path,在此列表中找到GWT SDK,点击Edit

        • 如果选中Use default SDK,请确保默认值可用。如果没有,请单击 Configure SDKs... 并确保您的 SDK 上没有 x 符号。如果是这样,请将其删除并重新添加。

        • 如果选中Use specific SDK,请确保您选择了一个可用的选项。

        【讨论】:

        • 这是我通常在第 2 点下所做的。不过,我喜欢你的回答清晰。
        • @Darthenius 除非您有充分的理由不这样做,否则我会将默认 SDK 设置为您打算使用的任何内容,并使用 Use default SDK 选项。这样您就不必担心它将来会损坏。
        【解决方案5】:

        在我的例子中,GWT_CONTAINER 添加在 JRE_CONTAINER 下方。 在我的 .classpath 文件中手动修复这个问题解决了这个问题!

        <classpathentry kind="con" path="com.google.gwt.eclipse.core.GWT_CONTAINER"/>
        <classpathentry exported="true" kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
        

        【讨论】:

          【解决方案6】:

          另外一个方法是将 GWT SDK 移动到 Properties/Java Build Path/Order and Export 页面上的库列表顶部(紧随您的项​​目之后)。

          【讨论】:

            【解决方案7】:

            您可以使用maven 来编译和设置您的工作区。

            不过我想这对你来说太过分了。

            有一个Maven GWT Plugin

            【讨论】:

            • 这对于这个特定的问题来说确实有点过头了,尽管从长远来看使用依赖管理解决方案是个好主意。
            猜你喜欢
            • 1970-01-01
            • 2010-11-08
            • 1970-01-01
            • 2011-11-04
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-03-09
            相关资源
            最近更新 更多