我正在尝试创建一个控制台应用程序来测试我的webservice。 我在http://localhost:8080/WS/myWS成功部署了一个Web服务 我用wsimport创建了代理类:
wsimport -d bin -s src http://localhost:8080/WS/myWS?wsdl
现在我的webservice类位于bin / mywebservice /中,我正在尝试使用classpath = ./
编译我的客户端类这是我班级的源代码:
import bin.mywebservice.myClass_Service;
public class TesterApp{
public static void main (String args[])
{
myClass_Service service = new myClass_Service();
}
}
我有错误:
TesterApp.java:1: error: cannot access myClass_Service
import bin.mywebservice_Service.myClass;
^
bad class file: .\bin\mywebservice\myClass_Service.class
class file contains wrong class: mywebservice.myClass_Service
Please remove or make sure it appears in the correct subdirectory of the classpath.
请帮助,myClass_Service有什么问题? 我发誓,myClass_Service.class存在于。\ bin \ mywebservice \
中答案 0 :(得分:3)
您在bin
声明中错误地包含import
。
而是将bin
放在类路径上并更正import
。
除非(名称不当)myClass_Service.java
文件是package bin.mywebservice
(根据错误消息,它不是),否则您正试图在错误的位置更正问题。< / p>
答案 1 :(得分:2)
看起来生成的类有一个包mywebservice
,而不是bin.mywebservice
。确保bin
目录位于类路径中,并从包中删除bin
。
答案 2 :(得分:-1)
如果您使用的是这个makefile可能会有所帮助:
CLASS_PATH = ../bin
vpath %.class $(CLASS_PATH)
all : HelloJNI.h
HelloJNI.h : com/my/package/HelloJNI.class
javah -classpath $(CLASS_PATH) com.my.package.$*