问题描述
各位大虾,我的同一个工程下的2个包games.stendhal.client.GameObjects和games.stendhal.server.entity我在第二个包中直接调用第一个包中的一个类:import.games.stendhal.client.GameObjects.j2Client,我只是单单导入这个类而已什么都没有做,构建的时候就出现了错误:uildfile:E:stendhalbuild.xmlinit:checkxml:server_build:[javac]Compiling10sourcefilestoE:stendhalbuildbuild_server[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:3:软件包pagelayout不存在[javac]importstaticpagelayout.EasyCell.eol;[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:3:仅从类和接口静态导入[javac]importstaticpagelayout.EasyCell.eol;[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:4:软件包pagelayout不存在[javac]importstaticpagelayout.EasyCell.grid;[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:4:仅从类和接口静态导入[javac]importstaticpagelayout.EasyCell.grid;[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:14:软件包pagelayout不存在[javac]importpagelayout.CellGrid;[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:38:找不到符号[javac]符号:类CellGrid[javac]位置:类games.stendhal.client.gui.bag.BagPanel[javac]finalCellGridbaggrid=grid(panels[0],panels[1],panels[2],eol(),[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:38:找不到符号[javac]符号:方法eol()[javac]位置:类games.stendhal.client.gui.bag.BagPanel[javac]finalCellGridbaggrid=grid(panels[0],panels[1],panels[2],eol(),[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:39:找不到符号[javac]符号:方法eol()[javac]位置:类games.stendhal.client.gui.bag.BagPanel[javac]panels[3],panels[4],panels[5],eol(),panels[6],panels[7],[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:40:找不到符号[javac]符号:方法eol()[javac]位置:类games.stendhal.client.gui.bag.BagPanel[javac]panels[8],eol(),panels[9],panels[10],panels[11],eol());[javac]^[javac]E:stendhalsrcgamesstendhalclientguibagBagPanel.java:40:找不到符号[javac]符号:方法eol()[javac]位置:类games.stendhal.client.gui.bag.BagPanel[javac]panels[8],eol(),panels[9],panels[10],panels[11],eol());[javac]^[javac]10错误BUILDFAILEDE:stendhalbuild.xml:186:Compilefailed;seethecompilererroroutputfordetails.
非常郁闷,这个为题弄了很久也没弄好,有哪位大侠帮忙解决下,小弟我无限感激!
解决方案
解决方案二:
一个包要用到另一个包中的类中的方法或属性必须导包然后用实例化对象调用可访问属性或方法
解决方案三:
引用1楼moneynumber_1的回复:
一个包要用到另一个包中的类中的方法或属性必须导包然后用实例化对象调用可访问属性或方法
2楼没看清楚我的问题,我只是单单导入一个包中的一个类,什么方法都没加,就出错了。。
解决方案四:
这个肯定要导包的,,,就像你用其它jar包中的类,不单要import还得把jar包引入到工程里边
解决方案五:
import是在编译的时候进行,只要使用了import,那编译器就会按照它自己定位文件的方法去找导入的类。但没有将包导入到工程下,编译器定位不到文件,自然也会报错!可以去看看import的机制!
解决方案六:
引用4楼tang9580的回复:
import是在编译的时候进行,只要使用了import,那编译器就会按照它自己定位文件的方法去找导入的类。但没有将包导入到工程下,编译器定位不到文件,自然也会报错!可以去看看import的机制!
我的所有包都是在同一个工程里面的,不存在找不到文件的问题。。。。
解决方案七:
应该是少了xxx.jar包吧,那个包就不记得了。
解决方案八:
引用4楼tang9580的回复:
import是在编译的时候进行,只要使用了import,那编译器就会按照它自己定位文件的方法去找导入的类。但没有将包导入到工程下,编译器定位不到文件,自然也会报错!可以去看看import的机制!
我的所有包都是在同一个工程里面的,不存在找不到文件的问题。。。。
解决方案九:
软件包pagelayout不存在pagelayout是啥东西?
解决方案十:
什么都没写就报错肯定是你配置错误了软件包pagelayout不存在是不是什么jar包没导
解决方案十一:
不管是不是同一工程只要不在同一包中就必须导入E:stendhalbuild.xml:186:Compilefailed;seethecompilererroroutputfordetails.如果这是错误那就是xml的186行错误build.xml是什么文件吗?你是不是吧web.xml搞丢了
解决方案十二:
在工程的构建路径里看看,编译错误,或许是你第二个类依赖别的jar,没有添加到构建路径buildpath中
解决方案十三:
我在第二个包中直接调用第一个包中的一个类:import.games.stendhal.client.GameObjects.j2Client,我只是单单导入这个类而已什么都没有做,什么意思?你调用这个包里的一个类,而不import它是吗?那你class.forName调用好了,这样不用import。但是要写完整包名。如果import报错,那好像没可能。
解决方案十四:
j2Client有问题.举个例子:classj2Client{importapack.unexistClass;//此时应该有编译错误voidmethod1(){}//...}classYourClass{importj2Client;//YourClass没问题,但是j2Client有问题,导致编译的时候出问题}因为import就意味着要将j2Clientload进来.
解决方案十五:
好强的import
解决方案:
引用12楼bayougeng的回复:
我在第二个包中直接调用第一个包中的一个类:import.games.stendhal.client.GameObjects.j2Client,我只是单单导入这个类而已什么都没有做,什么意思?你调用这个包里的一个类,而不import它是吗?那你class.forName调用好了,这样不用import。但是要写完整包名。如果import报错,那好像没可能。
我就是单单import同一个工程中的一个包中的一个类就出错的了。。。。而且我还发现了另外个错误,就是我import怎个包中的类就没出错。例如import。games.stendhal.*这样的话就没错,但是当我声明一下那个包中的一个类时,之前的错误又出现了、、、、、
解决方案:
不管是不是同一工程只要不在同一包中就必须导入E:stendhalbuild.xml:186:Compilefailed;seethecompilererroroutputfordetails.如果这是错误那就是xml的186行错误build.xml是什么文件吗?你是不是吧web.xml搞丢了不管回答的对不对,我都尽力了,希望对楼主能有所帮助
解决方案:
是不是ANT.XML中的设置问题?有没有什么设置会限制到的??、
解决方案:
jar包放进来编译才不错!不是放在bin那个目录下,放在bin下还要引入!
解决方案:
CLASSPATH错了
解决方案:
引用19楼java2000_net的回复:
CLASSPATH错了
如果CLASSPATH错的话,工程应该是编译不起来的吧,我的工程主要分2个包,一个是:games.aa.Cliend.*,,还有一个事games.aa.server.*,我在games.aa.server.*的包中importgames.aa.Cliend.abc这个类就出错了。。如果没导入该类的话就没问题。。。