2012-06-01 60 views
3

我已經構建了一個新的基礎grails項目。我有一個我在Grails之外編寫的基本java對象,並且出現了問題。我已經通過properties > Java build path > Libraries tab > Add Jars將jar文件添加到grails項目中。無法將java jar文件導入STS Grails項目

然後我嘗試在grails控制器中訪問它,並得到一個類def未找到錯誤

我在做什麼錯?


TestController.groovy

package testproject 

import test.TestClass 

class TestController { 
    def index() { 
     def testClass = new TestClass() 
     render 'Index page' 
    } 
} 

和:在罐子

TestClass.java

package test; 

public class TestClass { 
    private String string; 

    public void setString(String string) 
    { 
     this.string = string; 
    } 

    public String getString() 
    { 
     return string; 
    } 
} 

錯誤是:

C:\用戶\一個\ TestProject \的grails-app \控制器\ testproject \ TestController.groov Y:3:無法解決類test.TestClass @線3,列1。 進口test.TestClass

回答

0

你仍然需要將其導入Grails的控制器。

import your.java.ClassName 
+0

對不起,我應該包括我做到了,是的。 – user1429632

+0

你能用控制器源和錯誤的完整StackTrace更新你的問題嗎? –

+0

剛剛添加了代碼,並且我得到的錯誤是C:\ Users \ Joe \ TestProject \ grails-app \ controllers \ testproject \ TestController.groov y:3:無法解析類test.TestClass @ line 3,column 1. import test.TestClass – user1429632

4

從Grails類路徑生成的STS類路徑,但它是單向的。在STS中添加項目對Grails沒有影響。

將jar文件放入lib目錄並運行grails compile --refresh-dependencies。然後,通過右鍵單擊樹中的項目節點並運行Grails Tools |從Grails中重新同步STS刷新依賴關係。