Ant の TestNG タスクで Java9 の --add-modules コマンドオプションがエラーになるのを回避する
こんにちは、開発担当の Masa です。
JDK9 では "javax.xml.ws.*" など一部のモジュールがデフォルトで読み込まれなくなったため、必要であれば "--add-modules" Java コマンドオプションでモジュールの読み込みを指定します。
Ant で TestNG を実行する際に "jvmarg" で "--add-modules" Java コマンドオプションを追加するとエラーになる現象が発生しました。
<testng classpathref="creator"> <jvmarg value="--add-modules java.xml.ws" />
↑これはエラーになります。
回避するには "line" で指定します。
<testng classpathref="creator"> <jvmarg line="--add-modules java.xml.ws" />
尚、"--add-modules" Java コマンドオプションで複数のモジュールを指定する場合、カンマで区切って指定しますが、
下記はエラーになります。
<testng classpathref="creator"> <jvmarg line="--add-modules java.xml.ws,java.activation" />
回避するには下記のようにします。
<testng classpathref="creator"> <jvmarg line="--add-modules java.xml.ws" /> <jvmarg line="--add-modules java.activation" />
2個追加。以上です。