免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4979 | 回复: 10
打印 上一主题 下一主题

请问,如何import一个包内所有的类呢? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-15 02:36 |只看该作者 |倒序浏览
package MYTEST;
public class myTest{
private  String oneStr,twoStr;

public myTest()
{

}
public void setProperty(String TmpOneStr,String TmpTwoStr)
{
this.oneStr=TmpOneStr;
this.twoStr=TmpTwoStr;
}

public String getOneStr()
{
return oneStr;
}
public String getTwoStr()
{
return twoStr;
}

}

javac  myTest .java
编译好后,成为myTest.class
建立一个目录MYTEST
将myTest.class复制到MYTEST目录下
jar cvf MYTEST.jar MYTEST\*.class
生成MYTEST.jar文件
将MYTEST.jar文件复制到C:\jdk16\jre\lib\ext

写一个java文件
import MYTEST.*;                               \\这里非常有问题,不知道怎样修改
public class TryPackage
{
public static void main(String[] args)
{
myTest mytest=new myTest();
String temonestr="这是第一个变量";
String temtwostr="这是第二个变量";
mytest.setProperty(temonestr,temtwostr);
System.out.println(mytest.getOneStr());
}
}

javac TryPackage.java
出错了:
D:\MyJavaClass>javac -classpath "d:\MyJavaClass" TryPackage.java
TryPackage.java:6: 无法访问 myTest
错误的类文件: d:\MyJavaClass\myTest.java
文件不包含类 myTest
请删除该文件或确保该文件位于正确的类路径子目录中。
myTest mytest=new myTest();
^
1 错误

*******************************************************

将import MYTEST.*; 这一句改成import MYTEST.myTest;就顺利编译通过。


请问,为什么import MYTEST.*出错了呢?这一句的意思不是包含MYTEST包下所有的类的意思吗?若是用import MYTEST.myTest;这样的写法的话,若是一包内有很多类的话,就要写很长的一大串了。有什么解决方法呢?多谢~~~

论坛徽章:
0
2 [报告]
发表于 2008-07-15 08:27 |只看该作者
javac  myTest .java
编译好后,成为myTest.class
建立一个目录MYTEST
将myTest.class复制到MYTEST目录下
jar cvf MYTEST.jar MYTEST\*.class


你打包的文件可能有问题!

错误的类文件: d:\MyJavaClass\myTest.java
文件不包含类 myTest
请删除该文件或确保该文件位于正确的类路径子目录中。

文件和目录结构有问题!

[ 本帖最后由 @zheng 于 2008-7-15 16:50 编辑 ]

论坛徽章:
0
3 [报告]
发表于 2008-07-15 10:42 |只看该作者
唉,问题若是那么简单就好了,我试过将myTest.java文件放进MYTEST目录里,

jar cvf MYTEST.jar MYTEST\*.*
生成MYTEST.jar文件
将MYTEST.jar文件复制到C:\jdk16\jre\lib\ext
一样不行,一样要写成
import MYTEST.myTest;
才可以....

论坛徽章:
0
4 [报告]
发表于 2008-07-15 10:44 |只看该作者
再有就是.jar文件里,放java文件合适吗?我想只放编译过的class文件就可以了吧。

论坛徽章:
0
5 [报告]
发表于 2008-07-15 12:09 |只看该作者
错误在于应该在MYTEST的上一级目录进行操作:

javac MYTEST\myTest .java
jar cvf MYTEST.jar MYTEST\*.class
生成MYTEST.jar文件
将MYTEST.jar文件复制到C:\jdk16\jre\lib\ext

论坛徽章:
0
6 [报告]
发表于 2008-07-15 15:41 |只看该作者
刚才在公司试了一下
javac MYTEST\myTest .java
出现相同的错误:
D:\MyJavaClass>javac TryPackage.java
TryPackage.java:6: 无法访问 myTest
错误的类文件: .\myTest.java
文件不包含类 myTest
请删除该文件或确保该文件位于正确的类路径子目录中。
myTest mytest=new myTest();
^
1 错误

论坛徽章:
0
7 [报告]
发表于 2008-07-15 16:14 |只看该作者
错误的类文件: .\myTest.java
文件不包含类 myTest
请删除该文件或确保该文件位于正确的类路径子目录中。


都说了你的文件和目录结构有问题的了!解决办法:
1、在你TryPackage.java文件所在目录中创建一个子目录MYTEST
2、在MYTEST子目录中创建myTest.java文件,注意如果在TryPackage.java文件所在目录中包含myTest.java文件则将myTest.java文件删除。
3、DOS中回到TryPackage.java文件所在的目录执行javac TryPackage.java就可用编译相关文件了!

根据你的错误信息可用看出你可能将TryPackage.java和myTest.java放在同一个目录中进行编译了。

[ 本帖最后由 @zheng 于 2008-7-15 16:59 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-07-15 17:05 |只看该作者

回复 #1 superwolfman 的帖子

要是在用Eclipse的话直接有个组合键可以把你所需要的添加上

论坛徽章:
0
9 [报告]
发表于 2008-07-15 22:35 |只看该作者
这个,分明是位置不对
看你是用windows的,应该有winrar吧
去打开rt.jar研究下j2se带的类是怎么存储的吧

论坛徽章:
0
10 [报告]
发表于 2008-07-16 22:12 |只看该作者
原帖由 superwolfman 于 2008-7-15 15:41 发表
刚才在公司试了一下
javac MYTEST\myTest .java
出现相同的错误:
D:\MyJavaClass>javac TryPackage.java
TryPackage.java:6: 无法访问 myTest
错误的类文件: .\myTest.java
文件不包含类 myTest
请删除 ...

还是仔细点检查下吧!!

TryPackage.png (32.96 KB, 下载次数: 57)

TryPackage.png
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP