使用maven exec插件传递命令行参数javaagent

PAc*_*can 4 java sizeof javaagents

我在Java中有一个缓存应用程序,我需要在缓存中放置不同大小的对象.问题是我真的不知道如何计算自定义对象的大小,我找到了解决方案 - 使用该库:http://mvnrepository.com/artifact/com.googlecode.sizeofag/sizeofag/ 1.0.0.要使用库运行程序,我需要指定命令行参数-javaagent.那么,如果我使用maven怎么办?


该计划很简单:

protected static Boolean b;
public static void main( String[] args )
{
    System.out.println(SizeOfAgent.sizeOf(b));
}
Run Code Online (Sandbox Code Playgroud)

这是输出:

0
Can not access instrumentation environment.
Please check if jar file containing SizeOfAgent class is 
specified in the java's "-javaagent" command line argument.
Run Code Online (Sandbox Code Playgroud)


PS我知道,这样的问题已经存在,但它没有正确的答案.

lic*_*gwu 5

在Linux/Unix机器上,"mvn"命令将使用shell变量"MAVEN_OPTS"来传入选项.如果你想给Maven更多的内存,这很有用.在.profile或.bash_profile中添加如下行:

导出MAVEN_OPTS = -javaagent

在Windows上:

在shell(cmd.exe)中键入"set MAVEN_OPTS = ..."

要么

将MAVEN_OPTS添加到您的环境中

在NetBeans上:

在〜/ .netbeans/6.5 /中,创建etc/netbeans.conf.在那里添加您的环境变量,例如:

export MAVEN_OPTS =" - Xmx512m -XX:MaxPermSize = 128m"