2012-09-11 22 views
0

我不知道爲什麼我不斷收到像這樣的錯誤,但我一直在爲我而現在。使用Eclipse獲取「java.lang.NoClassDefFoundError:org/eclipse/xtext/xbase/lib/Pair」Xtend

基本上,我在執行項目時不能使用Xtend庫。 Eclipse構建得很好,但是在運行時,如果我執行一個引用了Xtext方法之一的類,我會得到一個NoClassDefinedError。

例如這個編譯就好: VAR重定向= newHashMap( 「/index.htm」 明明 - > 「/」 );

但它不執行,因爲它引用了Xtext的Pair。

我覺得它與構建自動化有關。也許是一個Manifest或者其他的東西,但是我對Eclipse/Java(和Xtend)相當陌生,所以我很難看清問題出在哪裏。

我將java項目作爲Google App Engine Web應用程序項目啓動,並在之後添加了Xtend功能。

任何人有任何想法?

+0

你如何嘗試運行代碼?也許GAE項目配置錯過了帶有Xbase庫代碼的jar文件? –

回答

1

您需要確保服務器可以訪問添加到GAE應用程序的任何第三方JAR。我建議您將JAR文件添加到war\WEB-INF\lib目錄,然後嘗試運行您的應用程序。

+0

這絕對是修復。僅僅因爲IDE有權訪問jar並不意味着服務器將有權訪問它們。爲了構建,需要項目引用罐子,並運行服務器需要訪問它們。這是通過將瓶子引入/放置到兩個位置來完成的。我其實想過手動將jar添加到lib文件夾,但我不想以「錯誤」的方式做事情,如果有一種標準的方式來添加它們,我會這樣做。謝謝! – gohenderson