セバスチャンDiot:
テストを実行するときに私たちのMavenのビルドは、Javaスタック・トレースの多くを生成します。私たちのビルドサーバーでは、私はそれらの一見のようなもの、具体的には、それらのうちのいくつかをフィルタリングしたいと思います:
javax.naming.NameNotFoundException: some.name.blabla
at ...
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:XXX)
出力の大きさを小さくします。テストが失敗した場合、我々は常に完全な出力を得るために、ローカルでのテストを再実行することができます。
私は、我々のコードまたは当社のMavenのビルドファイルには何も変更せずに、これを実行したいと思います。私はパイプにいくつかのLinuxのシェルコマンドにMavenの出力、それらのスタック・トレースアウト、そのフィルタをしたいです。
これまでのところ、私だけ抽出したい質問/回答を見つけた/それらをキャプチャする、またはフィルタ彼らは離れてJavaコードの変更、またはMavenの、またはEclipse、またはそのフィルタを使用して、すべてのスタック・トレースを。
イワン:
このようなテストファイルの場合
$ cat file
str1
javax.naming.NameNotFoundException: some.name.blabla
at ...
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:XXX)
str2
javax.naming.NameNotFoundException: some.name.blabla
at ...
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:XXX)
str3
使い方 sed
$ sed '/NameNotFoundException/,/ForkedBooter/d' file
str1
str2
str3