@Grapes([
@Grab("org.codehaus.geb:geb-core:0.7.2"),
@Grab("org.seleniumhq.selenium:selenium-firefox-driver:2.15.0"),
@Grab("org.seleniumhq.selenium:selenium-support:2.15.0")
])
import geb.Browser
Browser.drive {
// Load the page
go "http://www.whu.edu.cn"
// $("a") returns all hyperlinks on the page, similar to jQuery
$("a").each { a ->
// Display the required link properties and attributes
println """
The link to '${a.@href}' with text '${a.text()}' is at location (${a.x}, ${a.y}),
with a height of ${a.height}px and a width of ${a.width}px.
"""
}
}
我刚刚在Eclipse中创建了我的第一个Groovy项目,并在项目中创建了我的第一个Groovy类。为课程写的一切都如上所述。当我运行脚本时,它没有抛出任何错误,也不会及时终止。
是否尝试下载所有带注释的依赖项?如果是这样,每次运行时是否需要下载依赖项?或者一劳永逸?
答案 0 :(得分:2)
当你运行它时,它将检查是否已经下载了使用@Grab注释的每个库的正确版本,如果没有,将尝试下载它。它不仅仅是命名库,也是那些库的依赖。
所以,是的,第一次运行它可能需要一些时间。后续运行应该花费更少的时间。
请注意,这只是一个方便。您还可以下载所需的库,并在'groovy'命令的-classpath参数中指定它们(并删除Grapes / Grab构造)。
有关详细信息,请参阅http://groovy.codehaus.org/Grape