文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

mavenでリモートリポジトリに無いjarを取り込む

できますよ〜


f:id:treeapps:20180426142529p:plain

sastrutsで認証処理をしようと思い、sastruts-extensionを試してみようと思いました。
SAStruts Extension
しかしsastruts-extensionはAddDependencyで候補が出て来ません。
つまりリモートリポジトリにsastruts-extensionが登録されていません。

単純にjarをプロジェクトに配置してadd build pathしてもいいですが、せっかくmavenを使っているのでmavenにjarを管理させたいです。
ではリモートリポジトリに無いsastruts-extensionをmaven管理下に置きたいと思います。

jarをダウンロード・配置

SAStruts Extension
ダウンロードし、src/main/webapp/WEB-INF/libにコピーします。
sourceも合わせて src/main/webapp/WEB-INF/lib/sources にコピーします。
※ jarを配置する場所は任意に変更可能です。

pom.xmlを編集する

Add Dependencyで自動補完できないので、手動でpom.xmlを編集します。

        <dependency>
            <groupId>jp.ardito.seasar</groupId>
            <artifactId>sastruts-extension</artifactId>
            <version>0.3</version>
            <scope>system</scope>
            <systemPath>${basedir}/src/main/webapp/WEB-INF/lib/sastruts-extension-0.3.jar</systemPath>
        </depe

scopeをsystemにするのと、systemPathを設定するだけです。
これでMaven Dependencies内にsastruts-extension-0.3.jarが追加されます。