2013-08-22 22 views
0

我發現了幾個在Groovy腳本中使用NekoHTML庫的片段,例如,爲了在Groovy中使用NekoHTML,應該設置什麼CLASSPATH?

def page = new XmlSlurper(new org.cyberneko.html.parsers.SAXParser()).parse('http://groovy.codehaus.org/') 
def data = page.depthFirst().grep{ it.name() == 'A' && [email protected]().endsWith('.html') }.'@href' 
data.each { println it } 

所以我下載了Groovy,然後我下載了NekoHTML。

NekoHTML位於:
D:\TOOLS\nekohtml-1.9.18\

當我運行的代碼片段,我得到:

D:\SCRIPTS\webtesting.groovy: 4: unable to resolve class org.cyberneko.html.parsers.SAXParser 
@ line 4, column 27. 
    def page = new XmlSlurper(new org.cyberneko.html.parsers.SAXParser()).parse('http://groovy.codehaus.or 
g/') 

我的研究告訴我,我需要包括NekoHTML在classpath。

所以我成立了一個環境變量CLASSPATH,它等於:
CLASSPATH=D:\TOOLS\nekohtml-1.9.18\src

我打開了另一cmd窗口,跑到我的測試Groovy腳本。我得到了與上面相同的錯誤。

應該將我的CLASSPATH設置爲引用帶org.cyberneko.html.parsers.SAXParser的Ne​​koHTML組件?

回答

1

您需要在類路徑上使用nekohtml-1.9.18.jarxercesImpl-2.10.0.jar

或者你可以只添加一個@Grab到腳本

@Grab('net.sourceforge.nekohtml:nekohtml:1.9.18') 

而且groovy webtesting.groovy的頂部會爲你獲取這些依賴。當然,這取決於腳本如何運行

+0

@Guys怎麼樣?或者你如何使用source forge .net中找到的軟件包?任何想法,當我提取它,我發現裏面有一堆罐子? – danielad

+0

忘記了如何導入這兩個類呢? – danielad

+0

@danielad不知道你的意思是... –

相關問題