作者csihcs (非天夜翔)
站内java
标题Re: [J2SE] class loader
时间Mon Jun 16 21:28:38 2008
※ 引述《wctang (wctang)》之铭言:
: ※ 引述《csihcs (非天夜翔)》之铭言:
: : 这边对於这两行 Runtime 有点疑惑,
: : 如果要跑的机器没有 jar 这一支程式,该怎麽处理,
: : 另外就是一定要用 jar 档的方式,而不能直接用 class 档吗???
: : 可以请大大解惑一下吗~~谢谢~~ m(_@_)m
: 不是一定要用 jar,用 jar 和把 .class 放到一个目录是相同的。
: 这里这麽做只是为了让环境变得比较单纯...
: 至於没有 jar 的程式,其实 jre 本身就可以产生 jar 了:
: http://java.sun.com/docs/books/tutorial/deployment/jar/apiindex.html
: 这里这麽做只是为了让说明方便。
: (其实 javac 也可以由 java 来呼叫而不用外部程式,但应该就不内建在 jre 内了)
Q1:
我尝试不用 classes.jar 把 .class 包起来,而直接用 .class 却发现,
输出会变成
bfe
bfe
而不会是预期的
bfe
aft
怎麽会变成这样咧??
这样是不是代表着必须使用 jar 档来做到 runtime update class??
还是因为我的 url 打错的关系,
new URL("file:classes.jar");
new URL("file:."); // <- 我认为这样是使用 .class
Q2:
我用了 sun.tools.jar.Main 这个 class
来取代 Runtime.getRuntime... 那一行,
但是 compile 的时候却跟我说一个警告就是
sun.tools.jar.Main 是 Sun 专有的 API,未来的版本可能会被移除。
那我该怎麽做可以不使用 Runtime class 来呼叫 jar 这个外部程式而使用内建的,
Q3:
网址中教学的部份是 runtime 使用已经建好的 jar 档,
而不是 runtime 时建立 jar 档,
难道 Sun 是故意不让 Programmer 在 runtime 建立 jar 档使用??
问题很多,谢谢各位大大看完与指教~~~ m(_@_)m
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.31.81