3

Tomcat で実行されている Java EE Maven Web アプリケーションで、 http: //sizeof.sourceforge.netまたは呼び出しを必要とする同等のライブラリを使用したいと考えてい-javaagent:ます。

SO リサーチを使用して、pom.xml に次の追加を行いました。

  1. SizeOf ライブラリを実際に使用する場合:

    <dependency>
        <groupId>net.sourceforge.sizeof</groupId>
        <artifactId>SizeOf</artifactId>
        <version>0.2.1</version>
        <type>jar</type>
    </dependency>
    
  2. -javaagent 呼び出しを行う

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.4</version>
        <configuration>
             <forkMode>once</forkMode>
             <argLine>
                 -javaagent:"${settings.localRepository}/net/sourceforge/sizeof/SizeOf/0.2.1/SizeOf-0.2.1.jar"
             </argLine>
             <useSystemClassloader>true</useSystemClassloader>
        </configuration>
    </plugin> 
    

すべてがうまく構築されます。を使用してメソッドを呼び出すと、設定に失敗したSizeOfことを示すエラー Instrumentation is not set が表示されます。-javaagent

私はあなたの助けに感謝します。

4

1 に答える 1

2

私は Maven と Surefire に関して大の初心者でした。上記の構成は期待どおりに機能します。ビルド時にテスト用の javaagent を設定します。しかし、それは私が望んでいたものではありません。

Netbeans IDE を使用して、-javaagent を TomEE/Tomcat サーバーの VM オプションとして正しく設定することができました。

In Netbeans (OS X, 7.3): 
Tools > Servers > (your server) > Platform.
Fill in next to VM Options: -javaagent:/path/to/javaagent.jar

ここに画像の説明を入力

PS: Maven ソリューションの方がはるかに優れています。お持ちの場合は、共有してください。

于 2013-07-21T23:56:40.500 に答える