名为Bob的UNIX用户希望用新的国际象棋程序替换他的国际象棋程序,但他不确定旧的国际象棋程序的安装位置。 Bob目前能够使用以下命令从他的主目录/ home / bob开始运行Java国际象棋程序:java -classpath /test:/home/bob/downloads/.jar games.Chess Bob的CLASSPATH已设置(at登录时间):/ usr / lib:/ home / bat / classes:/ opt / java / lib:/ opt / java / lib / .jar Chess.class文件的可能位置是什么?< / p>
/test/Chess.class
/home/bob/Chess.class
/test/games/Chess.class
/usr/lib/games/Chess.class
/home/bob/games/Chess.class
inside jarfile /opt/java/lib/Games.jar (with a correct manifest)
inside jarfile /home/bob/downloads/Games.jar (with a correct manifest)
请回答这个问题
答案 0 :(得分:3)
只有这就是答案:
(3) /test/games/Chess.class
因为当您指定-classpath时,您会从OS中覆盖 CLASSPATH 以执行此操作。他们说&#34; Bob目前能够运行Java国际象棋程序&#34;所以新版本不在CLASSPATH中,而是在Bob指定的路径中。所以只有(3)才是答案。
答案 1 :(得分:1)
类路径加载对我来说似乎总是很棘手,我希望我的回答是正确的。
Chess
类必须在games
包内/home/bob
未添加到classpath /opt/java/lib/.jar
- cp不能这样定义;正确的路径:/opt/java/lib/*