なんとな~くしあわせ?の日記

JavaとかAWSの設定とかをメモする技術ブログ

Grape動かそうとしたらmavenリポジトリからのダウンロードに失敗していた話

エラーログ

・plexus-utils;3.0.8と2.0.7だけが何故か落ちてこない

DEBUG [org.codehaus.groovy.tools.shell.InteractiveShellRunner] Work failed: java.lang.RuntimeException: Error grabbing Grapes -- [download failed: org.codehaus.plexus#plexus-utils;2.0.7!plexus-utils.jar]
java.lang.RuntimeException: Error grabbing Grapes -- [download failed: org.codehaus.plexus#plexus-utils;2.0.7!plexus-utils.jar]

DEBUG [org.codehaus.groovy.tools.shell.InteractiveShellRunner] Work failed: java.lang.RuntimeException: Error grabbing Grapes -- [download failed: org.codehaus.plexus#plexus-utils;3.0.8!plexus-utils.jar]
java.lang.RuntimeException: Error grabbing Grapes -- [download failed: org.codehaus.plexus#plexus-utils;3.0.8!plexus-utils.jar]
設定ファイル
$ cat ~/.groovy/grapeConfig.xml

中身

<ivysettings>
    <settings defaultResolver="downloadGrapes"/>
    <resolvers>
        <chain name="downloadGrapes">
            <!-- todo add 'endorsed groovy extensions' resolver here -->
            <ibiblio name="local" root="file:${user.home}/.m2/repository/" m2compatible="true"/>
            <filesystem name="cachedGrapes">
                <ivy pattern="${user.home}/.groovy/grapes/[organisation]/[module]/ivy-[revision].xml"/>
                <artifact pattern="${user.home}/.groovy/grapes/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
            </filesystem>
            <!-- ここにリポジトリ入れるんですが、たぶんmaven2のリポジトリならなんでもいいと思います -->
	    <ibiblio name="central.maven.org" root="http://central.maven.org/maven2/" m2compatible="true"/>
        </chain>
    </resolvers>
</ivysettings>
対策1

Groovyのローカルリポジトリを見てみると、jarファイルだけ入ってないので手動でダウンロードしてやったら動いた。

$ ls  ~/.groovy/grapes/org.codehaus.plexus/plexus-utils/jars

ここから
Maven Repository: org.codehaus.plexus » plexus-utils

対策2

手動でjarを取得するのではなく、grapeコマンドを使うようにした

# grape install <groupId> <artifactId> [<version>]
$ grape install org.codehaus.groovy.modules.http-builder http-builder 0.5.2

kaakaa.hatenablog.com
d.hatena.ne.jp


所感

・おそらくjarファイルダウンロード時のタイムアウト制限値が厳しいのではないか