think in java 中的一个引入包的问题??求解答classPath设置!!

qingse77 2011-04-22 11:08:32
就是在第三章 操作符 时作者写了个简单的输入方法print()代替System.out.println(),不过要引入其自己创建的包。怎么引入那个包的,那个包我下载了。解压后是net.mindview.* ,我是把包放在了D:\think 文件夹下面的,即:D:\think\net\mindview.* ,我的在环境变量的classpath中添加了对包net的引用可是编译通不过,还是报错找不到软件包net.mindview.util不存在 。我的目前classpath变量是:.;C:\Program Files\Java\jdk1.6.0_21\lib\tools.jar;D:\think
前面是以前配置的,后面的D:\think是为引入net包自己添加的可是不行,该怎么设置classpath,求解答。

我尽量描述清楚,希望哪位仁兄帮忙,关于包的import 和 package 真实头疼,如有描述不清楚的地方,再补充

其源码如下:

//: Operators/HelloDate.java
import java.util.*;
import static net.mindview.util.Print.*;

public class HelloDate {
public static void main(String args[]) {
print("Hello, it's: ");
pritn(new Date());
}
} /* Output: (55% match)
Hello, it's:
Wed Oct 05 14:39:03 MDT 2005
*///:~

补充一点 我的源码HelloDate.java文件是放在D:\think\c03 文件下的。 这个会有影响吗??
...全文
168 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingse77 2011-04-22
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ethenjean 的回复:]
你看你的classpath,第一个字符是‘.’,这就表示当前路径,对于你的HelloDate.java来说,当前路径就是D:\think\c03,所以你把net包(不知道是什么包,姑且这么叫吧)放在D:\think\c03下面是肯定能通过编译的。如果你把net包放在别的位置,那classpath里面必须要定位到jar才行,如D:\think\c03\net.jar。
[/Quote]

我试了下把 net包放到:E:\java目录下,然后classpath添加了(在前面C:\的设置后面)E:\java\net.jar
按理说D:\think\c03下面没有了,它也会在classpath里搜索,能够完成编译的,可是还是不行?
ethenjean 2011-04-22
  • 打赏
  • 举报
回复
你看你的classpath,第一个字符是‘.’,这就表示当前路径,对于你的HelloDate.java来说,当前路径就是D:\think\c03,所以你把net包(不知道是什么包,姑且这么叫吧)放在D:\think\c03下面是肯定能通过编译的。如果你把net包放在别的位置,那classpath里面必须要定位到jar才行,如D:\think\c03\net.jar。
qingse77 2011-04-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zyplaypk 的回复:]
你直接用doc指令编辑的?如果是的话,
应是
package c03;
import java.util.*;
然后doc指令放到D:\think下编译试试
[/Quote]

你这解释,用什么难懂的地方吗?
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
强烈建议初学者看看视频,不然这问题解释给你听你也不明白,推荐尚学堂马士兵系列视频
「已注销」 2011-04-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 qingse77 的回复:]

问题解决了 ,可以编译、解释、运行了,可是一点也不懂。就是classpath不用改变设置,把包net放到 源代码同样的目录下(即:D:\think\c03),就可以运行了。为什么吗
[/Quote]


同意
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
你最后用用java的编辑器eclipse或者Myeclipse熟悉下工程路径
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
你直接用doc指令编辑的?如果是的话,
应是
package c03;
import java.util.*;
然后doc指令放到D:\think下编译试试
qingse77 2011-04-22
  • 打赏
  • 举报
回复
问题解决了 ,可以编译、解释、运行了,可是一点也不懂。就是classpath不用改变设置,把包net放到 源代码同样的目录下(即:D:\think\c03),就可以运行了。为什么吗
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
而且javac和doc命令都可以指定classpath(编译路径),然后用java命令测试下*.class对应的类你就清楚了
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
这样c03和net目录处于同级根目录D:\think(classpath路径)下
zyplaypk 2011-04-22
  • 打赏
  • 举报
回复
src,test,webapp都是默认的sourcefolder(classpath下),可以看出classpath一般都需同样的根目录才能识别,
也就是我改的
[Quote=引用 2 楼 zyplaypk 的回复:]
package c03;
import java.util.*;
然后doc指令放到D:\think下编译试试
[/Quote]

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧