2017-11-21 22 views
1

質問

agentlibを指定するときに等号を含むジャーパスを使用することはできますか?たとえば、ある種のエスケープを使用しますか?-javaagentを指定するとき、=(等号)を含むジャーパスを持つことは可能ですか?

注:Javaエージェントを指定する構文は-javaagent:jarpath[=options]です(the official documentation参照)。

コンテキスト

私はパスが=(等号)記号が含まれている継続的インテグレーションを設定しています。 エージェントのjarが見つからないため、起動時に失敗するmaven surefireプラグインを実行する際に問題が発生します。 少し掘り下げて見つけたのは そして私たちのコマンドラインは/<path-to-jre>/bin/java -javaagent:/<path-to-jenkins-workspace>/myProject=myJobName/.repository/org/jacoco/org.jacoco.agent/0.7.9/org.jacoco.agent-0.7.9-runtime.jar=destfile=/<path-to-jenkins-workspace>/myProject=myJobName/target/jacoco.exec,append=true <other arguments to java dropped>のようです。 プロジェクトの名前をmyProject+myJobNameに変更してこのコマンドを作ったので、問題は等価の使用にあると確信しています。

上記のコマンドラインはmaven-surefire-pluginによって直接生成されるため、変更するオプションは多数ありません。

+1

からの1はここでは、コードの解析のOpenJDKのjavaagent引数へのリンクですします。https: //github.com/dmlloyd/openjdk/blob/28cf61ba0955833f75cf7ba2b80cf83c557300d5/src/java.instrument/share/native/libinstrument/InvocationAdapter.c#L66(エスケープをサポートするようには見えません)。 – Sylvain

答えて

1

シルヴァンさんのコメントによると、これはOpenJDKの9では不可能である

これはおそらく、以前のJDKと同じであり、Oracle

関連する問題