单独运行JAR包时的类路径问题

本文介绍了一个 Java 程序如何将系统的属性,特别是 class path 信息,写入到一个名为 system.properties 的文件中。该程序适用于理解不同执行方式下(如直接运行或通过 JAR 文件运行)类路径的变化。
下面的代码运行后可以生成一个 system.properties文件,其中有一行java.class.path=[......]。
如果是将此类打入jar包
systemproperty.jar 中执行,java -jar systemproperty.jar,生成的文件中java.class.path=systemproperty.jar
如果是直接运行此类java SystemProperty,生成的文件中java.class.path=.;C/://Program Files//Java//jdk1.5.0_09//lib//tools.jar;C/://Program Files//Java//jdk1.5.0_09//lib//dt.jar;

参考【http://www-128.ibm.com/developerworks/cn/java/j-jar/index.html】:
一个可执行的 JAR 必须通过 menifest 文件的头引用它所需要的所有其他从属 JAR。如果使用了 -jar 选项,那么环境变量 CLASSPATH 和在命令行中指定的所有类路径都被 JVM 所忽略。
The JAR archive specified by the -jar option, which overrides all other values. If this option is used, all user classes must come from the specified archive.

  1. import java.util.Properties;
  2. import java.io.FileNotFoundException;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.OutputStream;
  6. public class SystemProperty
  7. {
  8.     public static void main(String[] args) {
  9.         Properties properties = System.getProperties();
  10.         try
  11.         {
  12.             OutputStream fos = new FileOutputStream("system.properties");
  13.             properties.store(fos, "Comment!");
  14.         }
  15.         catch (FileNotFoundException e)
  16.         {
  17.             // TODO Auto-generated catch block
  18.             e.printStackTrace();
  19.         }
  20.         catch (IOException e)
  21.         {
  22.             // TODO Auto-generated catch block
  23.             e.printStackTrace();
  24.         }
  25.     }
  26. }
  27.     

1、安装licensemanager,问license,单击cancel,然后finish,重启计算机;2、安装cadence的product;3、在任务管理器中结束掉cdsNameServer.exe和cdsMsgServer.exe(可能只有一个,也肯能没有,没有就直接关掉任务管理器即可);4、打开开始---Cadence---License Manager---LmTools软件中Start/Stop/Reread标签,单击Stop按钮,关掉LmTOOLs里面的cadence LIC服务(如果Start/Stop/Reread文本框内没有License文件,无需单击Stop按钮)。5、注意运行破解之前要把C:\Cadence\SPB_16.6\tools\pspice目录下的orSimSetup.dll剪切到C:\Cadence目录下, 否则,破解后是不能进行仿真设置的(他人曰);6、把LicenseManager文件夹下pubkey、LicenseManager.cmd、cdslmd.exe和pubkey.exe放到C:\Cadence\LicenseManager目录下,并替换文件夹下同名的文件,运行LicenseManagerPubkey.cmd;7、把破解压缩中SPB_16.6\tools文件夹下的pubkey、pubkey.exe和Tools.cmd放到C:Cadence\SPB_16.5\tools目录下并运行Tools.cmd。如果Tools.cmd运行候提示pubkey命令窗口出现任何can not open …… 或者是 diff pubkey等字样,说明相应的工具就不能破解。8、打开LicGen文件夹,只能把src.lic中第一行中的host改为你的计算机名称,其它一定不能变,双击LicGen.cmd生成新的license.lic,把生成的license.lic拷贝到C:\Cadence\SPB_16.6目录下(位置随便放);9、打开开始---Cadence---License Manager---License Server Configuration Utility指定生成的license.lic位置,一路单击Next,直到结束;10、在电脑开始菜单中的程序里找到Licenseclient configuration Unility,点击运行后,不用填什么直接点next,最后点finish 11、打开开始---Cadence---License Manager---LmTools软件在弹出的窗口里找到Config Services项,在Path to the license file项的那一行里,点Browes指向刚才新生成的license.lic,之后再点Save Service。在Start/Stop/Reread标签,单击Start按钮,启动服务。该步可以不需要执行,直接打开Cadence对应的软件,也能自动运行。12、破解完成。13、别忘了把刚才剪切到别处去的orsimsetup.dll粘贴回安装路径的cadence\SPB_16.6\tools\pspice目录下 到此,破解完成。不必重启电脑就可运行程序了.此修正16.6版本首发 感谢原破解作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值