NetBeans80にofflineでJUnitをインストール¶
JUnitのモジュールファイルをダウンロード¶
モジュールファイルのURLを調査・作成¶
NetBeans IDE(Ver.8.0.2)を起動し、[ツール]メニュー > [プラグイン] > [設定]タブを選択し、[認定プラグイン]をクリックし右側ペインに表示される認定プラグインのURLをコピーします。
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/catalog.xml.gz
URLの末尾にある.gzを削除し、ブラウザで開きます。
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/catalog.xml
表示されたXMLファイル内で、junitを検索します。次の2つのモジュールが見つかります。
<module_group name="Java SE"> <module codenamebase="org.netbeans.modules.junitlib" distribution="802patch1/extra/org-netbeans-modules-junitlib.nbm" downloadsize="30843" global="false" homepage="http://www.netbeans.org/" license="DCE70611" moduleauthor="" needsrestart="false" releasedate="2014/11/18" targetcluster="java"> <manifest AutoUpdate-Show-In-Client="true" OpenIDE-Module="org.netbeans.modules.junitlib" OpenIDE-Module-Display-Category="Java SE" OpenIDE-Module-Implementation-Version="201411181905" OpenIDE-Module-Java-Dependencies="Java > 1.6" OpenIDE-Module-Long-Description="Includes the JUnit unit testing library and corresponding library definitions. 3.x and 4.x versions are both included." OpenIDE-Module-Module-Dependencies="org.netbeans.libs.junit4 > 1.14" OpenIDE-Module-Name="JUnit" OpenIDE-Module-Requires="org.openide.modules.ModuleFormat1" OpenIDE-Module-Short-Description="Bundles the JUnit testing library." OpenIDE-Module-Specification-Version="1.1"/> </module> :(中略) <module autoload="true" codenamebase="org.netbeans.libs.junit4" distribution="802patch1/extra/org-netbeans-libs-junit4.nbm" downloadsize="282956" homepage="http://www.netbeans.org/" license="DCE70611" moduleauthor="" needsrestart="false" releasedate="2014/11/18" targetcluster="platform"> <manifest AutoUpdate-Show-In-Client="false" OpenIDE-Module="org.netbeans.libs.junit4" OpenIDE-Module-Display-Category="Libraries" OpenIDE-Module-Implementation-Version="201411181905" OpenIDE-Module-Java-Dependencies="Java > 1.4" OpenIDE-Module-Long-Description="Includes the JUnit 4.x unit testing library." OpenIDE-Module-Name="JUnit 4" OpenIDE-Module-Requires="org.openide.modules.ModuleFormat1" OpenIDE-Module-Short-Description="Bundles the JUnit 4.x testing library." OpenIDE-Module-Specification-Version="1.14"/> </module>
このXMLファイル自身が置かれているディレクトリからmoduleタグのdistribution属性にある相対パスをたどるとインストールに必要なnbmファイルがあります。
まず、ブラウザで開いているURLhttp://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/catalog.xml
からディレクトリ部分を取り出します。
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/
に、ditribution属性の相対パスを付け加えます。
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/802patch1/extra/org-netbeans-modules-junitlib.nbm"
が作成されます。
モジュールファイルのダウンロード¶
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/802patch1/extra/org-netbeans-modules-junitlib.nbm
http://updates.netbeans.org/netbeans/updates/8.0.2/uc/final/certified/802patch1/extra/org-netbeans-libs-junit4.nbm
これをダウンロードし、org-netbeans-modules-junitlib.nbm ファイルとorg-netbeans-libs-junit4.nbm を取得します。
モジュールファイルorg-netbeans-libs-junit4.nbmの修正¶
NetBeansのモジュールファイル(.nbm)はZIP形式の書庫となっています。
org-netbeans-libs-junit4.nbm をZIP解凍ツールで展開(閲覧)すると、次のようになっています。
+-- Info +-- META-INF +-- netbeans +-- config +-- modules +-- ext | +-- junit-4.10.jar.external <-- モジュールインストール時にmavenリポジトリにアクセスして取得 +-- org-netbeans-libs-junit4.jar.pack.gz
ここにあるjunit-4.10.jar.externalの中を見ると次のように取得先URLが記述されています。
これは、モジュールのインストールを実施するときに、この取得先URLからダウンロードするのに使われます。
CRC:3480621823 SIZE:253160 URL:http://repo1.maven.org/maven2/junit/junit/4.10/junit-4.10.jar URL:m2:/junit:junit:4.10:jar
この、junit-4.10.jar.external を、あらかじめjunit-4.10.jar に差し替えておくことで、モジュールインストール時のダウンロードを抑止することができます。
+-- Info +-- META-INF +-- netbeans +-- config +-- modules +-- ext | +-- junit-4.10.jar <-- 先にダウンロードした実体と差し替える +-- org-netbeans-libs-junit4.jar.pack.gz
モジュールファイルorg-netbeans-modules-junitlib.nbm の修正¶
org-netbeans-modules-junitlib.nbm をZIP解凍ツールで展開(閲覧)すると、次のようになっています。
+-- Info +-- META-INF +-- netbeans +-- config +-- docs | +-- junit-3.8.2-api.zip.external <-- モジュールインストール時にmavenリポジトリにアクセスして取得 | +-- junit-4.10-javadoc.jar.external <-- モジュールインストール時にmavenリポジトリにアクセスして取得 | +-- junit-4.10-sources.jar.external <-- モジュールインストール時にmavenリポジトリにアクセスして取得 +-- modules +-- ext | +-- junit-3.8.2.jar.external <-- モジュールインストール時にmavenリポジトリにアクセスして取得 +-- org-netbeans-modules-junitlib.jar.pack.gz
各external の中を確認し、記載されているURLから実体ファイルをダウンロードし、差し替えます。
+-- Info +-- META-INF +-- netbeans +-- config +-- docs | +-- junit-3.8.2-api.zip <-- 先にダウンロードした実体を名前を変更し差し替える | +-- junit-4.10-javadoc.jar <-- 先にダウンロードした実体と差し替える | +-- junit-4.10-sources.jar <-- 先にダウンロードした実体と差し替える +-- modules +-- ext | +-- junit-3.8.2.jar <-- 先にダウンロードした実体と差し替える +-- org-netbeans-modules-junitlib.jar.pack.gz
junit-3.8.2-api.zip.externalの実体についてファイル名変更が必要¶
junit-3.8.2-api.zip.externalには、次のようにjunit-3.8.2-api.zipではなく、junit-3.8.2-javadoc.jarと書かれています。
CRC:1744174913 URL:http://repo1.maven.org/maven2/junit/junit/3.8.2/junit-3.8.2-javadoc.jar URL:m2:/junit:junit:3.8.2:jar:javadoc
しらべてみると、インターネット接続環境でインストールしたNetBeansの中にあるjunit-3.8.2-api.zipと、junit-3.8.2-javadoc.jarとは中身が同一でした。
そこで、ダウンロードしたjunit-3.8.2-javadoc.jarを、junit-3.8.2-api.zipと名前を変更して差し替えます。
JUnitモジュールのインストール¶
NetBeans IDEの[ツール]メニュー > [プラグイン] > [ダウンロード済]をクリックし、[プラグインの追加]ボタンをクリックします。
ファイル選択ダイアログで、内容を差し替えた2つのモジュールファイルを複数選択し、[開く]をクリックします。JUnitとJUnit4が一覧に表示されるので、チェックが付いていることを確認し、[インストール]ボタンを押します。