0

Groovy には、さまざまなサードパーティ ライブラリが付属しています。servlet-api (v2.4) は groovy (v 2.0.1) の例です。

groovy:000> javax.servlet.http.HttpServlet.protectionDomain.codeSource
===> (file:/usr/lib/groovy/2.0.1/lib/servlet-api-2.4.jar <no signer certificates>)
groovy:000> 

より新しいバージョンが必要だと仮定すると、それを達成するための推奨されるアプローチは何ですか?

4

2 に答える 2

1

Groovy スクリプトを使用して Jetty 9.1.x の組み込みインスタンスを実行していたときに、この問題に遭遇しました。多くのクラスローディングのゆがみの後、機能した唯一のことは、-cpオプションを使用してコマンドラインで JAR を指定することでした。

groovysh -cp javax.servlet-api-3.1.0.jar

これにより、含まれている servlet-api の前に JAR の URL が配置され、最初にチェックされるようになります。今のところ、それを回避する別の方法があるようには見えません:

groovy:000> javax.servlet.http.HttpServlet.protectionDomain.codeSource
===> (file:/<current directory>/javax.servlet-api-3.1.0.jar <no signer certificates>)
于 2014-05-29T18:36:24.690 に答える
0

古いものを削除して、groovy/lib/必要なもの/home/will/.groovy/lib/を追加しました 元のlibディレクトリに直接追加することもできると思います

于 2012-09-09T22:56:56.037 に答える