私の目標は、Playアプリに含まれる統合テストを開始することです。
そのために、Intellij を介してそれらを起動していました。これらのテストにはSpringのaspectJウィービングが必要なので、IntellijテストconfでこのVM引数を正確に記述しました:
-javaagent:/Users/myName/.ivy2/cache/org.springframework/spring-instrument/jars/spring-instrument-3.2.2.RELEASE.jar
全体が機能します。
play
ここで、コマンドに続く単純なコマンドを使用して、コマンドラインからそれらを起動できるようにしたいと考えていますtest-only
。
最初に、javaagent を Play アプリに追加する方法を扱ったこの投稿を読みました。
build
したがって、 Spring の javaagent を追加して、Play のファイルを次のように変更します。
java ${DEBUG_PARAM} -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M ${JAVA_OPTS} -javaagent:/Users/myName/.ivy2/cache/org.springframework/spring-instrument/jars/spring-instrument-3.2.2.RELEASE.jar -Dfile.encoding=UTF-8 -Dplay.version="${PLAY_VERSION}" -Dsbt.ivy.home=`dirname $0`/../repository -Dplay.home=`dirname $0` -Dsbt.boot.properties=`dirname $0`/sbt/sbt.boot.properties -jar `dirname $0`/sbt/sbt-launch.jar "$@"
ただし、私のテストは失敗するだけです.SpringのアスペクトJウィービングの欠落について不平を言っています。しかし、test-only
別のプロセスを起動するので、それは確かに論理的です...
javaagent を使用して、アスペクト J ウィービングをテストで処理する方法はありますか?