从pom文件设置groovysh类路径

3

我有一个Java项目(不使用Groovy),但我想在groovysh中与我的Java类进行交互。是否有一种简单的方法可以使用我的项目中的pom文件来设置groovysh的类路径?

3个回答

7

仅供参考,我发现了一种方法,我认为它更加优雅,当项目使用gmaven-plugin时:运行mvn groovy:shell,你可以准备就绪并发出命令,groovysh可用的类路径与该项目可用的类路径相同!


3

MOP 可能会有所帮助:

Scripting Goodies

Other times, you just need need the CLASSPATH so you can use it in a manually crafted script your running. Try this.

mop classpath org.apache.camel:camel-example-pojo-messaging

更新: 上述命令可用于输出现有maven工件的类路径。例如:

$ ./mop classpath org.hibernate:hibernate-core:3.3.2.GA

输出以下内容:

/home/pascal/opt/mop/repository/org/hibernate/hibernate-core/3.3.2.GA/hibernate-core-3.3.2.GA.jar:/home/pascal/opt/mop/repository/antlr/antlr/2.7.6/antlr-2.7.6.jar:/home/pascal/opt/mop/repository/commons-collections/commons-collections/3.1/commons-collections-3.1.jar:/home/pascal/opt/mop/repository/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar:/home/pascal/opt/mop/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar:/home/pascal/opt/mop/repository/javax/transaction/jta/1.1/jta-1.1.jar:/home/pascal/opt/mop/repository/org/slf4j/slf4j-api/1.5.8/slf4j-api-1.5.8.jar

可以在其他地方使用。就像我说的那样,它可能有帮助,但我不确定它是否适合您的需求(似乎需要将工件部署在远程存储库中)。


我该如何让它将pom的依赖项解决后,将我转到groovysh?我在网站上点击了文档链接,但它显示“TODO”:/ - jshen

1

您可以使用-cp将它们添加到类路径中,例如:

groovysh -cp some.jar:another.jar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接