【问题标题】:Referencing a GWT project from another GWT one - Problems从另一个 GWT 引用 GWT 项目 - 问题
【发布时间】:2012-03-28 09:59:28
【问题描述】:

我已经在使用一个开源 GWT 项目 (iServe),我想将另一个开源 GWT 项目 (PetalsBPM) 集成到其中,我的意思是能够调用它并引用它的方法。

我已经在 Eclipse 中导入 iServe(它有多个模块)作为单独的 Maven 项目引用它的另一个,并且可以通过 Runas -> Web 应用程序在开发模式下成功运行它。

如果我这样做并通过控制台以 mvn gwt:run 运行另一个项目,我会通过 iServe 调用启动 PetalsMBP。但是,这意味着这两个程序必须按原样运行,而无需相互通信。

我还成功地将第二个项目作为 java 项目导入到 eclipse 中(转换为 Maven 会导致问题 - 各种生命周期配置问题),但是每当我尝试通过 Properties -> Java Build Path 添加到 iServe ->项目,虽然它不会立即导致任何错误,但我无法再启动 iServe。它会产生以下错误:

"执行命令行时发生异常。 无法运行程序“C:\Program Files\Java\jre7\bin\javaw.exe”(在目录“C:...iserve-sal-gwt-1.0.0-SNAPSHOT”中):CreateProcess error=206,文件名或扩展名太长”

我的问题是否与 PetalsBPM 不是 Eclipse 中的 Maven 项目有关(我对此表示怀疑)? 我做错了什么,即这不是从另一个项目引用项目的方法吗?我应该添加对第一个项目(iServe)gwt.xml 文件的引用吗? 有没有办法做我想做的事,而不必将第二个项目包装为 jar 并从 iServe 调用它?我宁愿不这样做,因为每次我做一个微小的改变时都生产一个罐子并不是很有效!

P.S:第二个项目是一个普通的 GWT 项目,它有一个入口点,而不仅仅是一个模块。我应该删除它吗?


更新:试图找出这个错误的根源,我试图简化问题,所以我执行了以下动作:

  1. 我创建了两个新的简单 GWT 项目并尝试引用一个 从另一个。工作正常
  2. 我引用了我真正想要的项目 使用我刚刚创建的简单的(PetalsBPM)。也有效 很好。
  3. 我从原来的项目中引用了新的简单项目 想要使用(iServe)。也可以正常工作。
  4. 尝试做我实际做的事 想要做,从 2 和 3 复制设置。产生相同的错误 “CreateProcess 错误 = 206,文件名或扩展名太长”如果 我引用 PetalsBPM(当我从引用的 项目)

所以,我尝试切换工作区。我在 C:\ 中创建了一个新工作区,并将实际项目移到那里。仍然没有用。 :(

还有什么想法吗?

【问题讨论】:

  • 我发现了问题所在,所以我在此发布解决方案,供将来可能遇到的任何人使用。问题不是由于单个文件名/路径名太长,而是整个对 google eclipse 插件的请求太大。具体来说,问题是由于第二个项目需要太多的库/罐子引起的。我不仅需要更少的 jar,而是简单地将所有 jar 移动到 C: 并将它们重命名为具有两个字符(a1、b9 等)的文件,这样就成功了。

标签: eclipse gwt maven


【解决方案1】:

我遇到了相同类型的错误“创建进程,错误=206,路径太长等”。一百次。 然后,我在 google-groups 中找到了解决方案/解释,它解决了我的问题。 我发布内容和链接,因为它可能对其他人有所帮助。 这个网站(StackOverflow)真的帮​​助了我一千次。 谢谢大家!

解决方案/解释: (斯蒂芬·约翰逊的回应)

(...) 如果您使用的是 eclipse 插件,请转到 Project |属性,选择 Google \ App Engine \ ORM 并且仅包含您拥有的目录 您想要增强的类。默认情况下,它会执行整个项目 所以这包括很多不必要的文件。 (...)

链接original post @ google-groups

【讨论】:

    【解决方案2】:

    再次阅读异常消息。在某个地方,Maven 生成的路径对于(某些)Windows API 来说太长,无法处理,请尝试将您的工作区移动到直接位于 C:\ 下方的目录。

    【讨论】:

    • 一开始我也是这么想的。我先尝试缩短它,但它没有用。但是,DID 起作用的只是从第一个项目的 Properties -> Java Build Path -> Projects 中删除了第二个项目。所以,我猜它与路径的实际长度无关。
    • 我也尝试了您的建议并将项目移至 C:\ 以防万一。它没有用。此外,我注意到虽然 Run as from Eclipse 会产生此错误,但如果我尝试从命令行执行 mvn gwt:run ,它会启动开发模式而不是项目,抱怨 gwt 的继承行(不是那个引用其他项目)
    【解决方案3】:

    我刚刚尝试了“skolima”回复,它对我有用。在 Eclipse 中,我点击了 File->Switch Workspace。

    注意三点:

    1. 在“C:\workspace”中创建工作区后,我必须更新我的项目 -> 属性 > Java 构建路径 > 库 > 添加外部 JAR...

    2. 我使用的是 Windows 7。

    3. 我正在使用“面向 Web 开发人员的 Eclipse Java EE IDE”

    我希望这个别人。

    【讨论】:

      猜你喜欢
      • 2019-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-06
      相关资源
      最近更新 更多