请问怎么在eclipse添加参数agentlib呢?
程序通过下面的方式运行类加载java -agentlib:myclassloader Hello
然后我想在eclispe添加参数-agentlib:myclassloader
一直都没设置成功,
在eclipse.ini添加了-agentlib:myclassloader 也是不成功
请问要怎么设置呢? --------------------编程问答-------------------- --------------------编程问答-------------------- 之前碰到过 在tomcat启动时去eclipse 的tomcat 服务中设置 具体是这样:双击eclipse中的tomcat 在eclipse中出现一个tomcat配置页面,点击open launch configuration 在第二个页签Arguments 中的 VM arguments中配置 --------------------编程问答--------------------
对运行Hello的run configuration做配置,
菜单run - run configurations - 选中你的Hello程序那项 - Arguments页 - 加入-agentlib:myclassloader
即可 --------------------编程问答--------------------
还没运行run啊,直接打开eclispe就提示红叉了 我设置eclispe自动编译的 --------------------编程问答--------------------
tomcat可以加
现在是在eclispe的自动编译时怎么加参数呢?
--------------------编程问答--------------------
提示红叉,和-agentlib:没有关系的。你看看markers视图(或problems视图)中有什么错误提示不。 --------------------编程问答--------------------
就是缺少类啊 我这个测试类很简单 提示缺少hello 因为我这hello.class是加密的,换回未加密的类后是正常的
package com;
public class Test {
public static void main(String[] args) {
Hello hello=new Hello();
hello.GetHello();
}
}
--------------------编程问答--------------------
如果你在命令行下编译、运行都正常的话,
可以在Eclipse中,项目属性 -> builders
在这里面配置自己的构建器。
自定义构建器的具体做法参见:
http://www.ibm.com/developerworks/cn/education/opensource/os-eclipse-tools/section5.html --------------------编程问答--------------------
我加了好像没效果,
而且我把 builders 全部取消打勾了 还是显示红叉啊
应该是在哪里自动编译设置吧? --------------------编程问答-------------------- 我感觉应该在工程目录的.project 里面修改
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
<jvmarg value="-agentlib:C:\WINDOWS\myclassloader "/>
不知道这边参数怎么写正确
</arguments>
</buildCommand> --------------------编程问答-------------------- 自动编译设置在这里:
window - preferences - general - workspace --------------------编程问答--------------------
Eclipse用的Java编译器不是javac
所以参数怎么加还真是个问题。
顺便问下你用命令行javac命令编译是否可以成功,之后用java命令来运行又是否可以成功... --------------------编程问答--------------------
用java 运行正常的
java -agentlib:myclassloader Hello --------------------编程问答-------------------- 嗯。现在其实不是运行的问题,而是编译的问题。
在命令行下你是如何完成编译的呢? --------------------编程问答--------------------
编译通过正常方式编译啊
因为myclassloader.dll是加密编译后的class的
所以编译没问题 正常的方式编译
--------------------编程问答--------------------
你的意思是在命令行下,使用加密的Hello.class,编译Test类可以成功,
而在Eclipse中,使用加密的Hello.class,编译Test类不能成功。
是这样的吗? --------------------编程问答--------------------
哦 这个加密工具只是加密编译后的class文件,不能编译.java文件....
那这样就不能用于eclispe吧?
--------------------编程问答--------------------
哦。
你在Eclipse项目中,要将Hello.class文件放进去,还要加到build path中,这样Test类才能成功编译。项目才不会报错。
加.class目录时这样操作:
项目属性 -> build path - configure buildpath - libraries - add class folder
要注意.class文件的package层次必须要对哦。
运行的时候,如我在3楼所说,加-agentlib虚拟机参数。
补充:Java , Java EE