【问题标题】:The type java.rmi.RemoteException cannot be resolved. It is indirectly referenced from required .class files error in java无法解析 java.rmi.RemoteException 类型。它是从 java 中所需的 .class 文件错误中间接引用的
【发布时间】:2012-12-05 11:12:41
【问题描述】:

我对 Java 非常陌生,并试图调用 Web 服务。我从网上拿了一个代码

String message = "";
static Map output;

public static void main(String args[]) {
    try {
        String inputparam = "10000";

        Service service = new Service();
        Call call = (Call) service.createCall();

        call.setTargetEndpointAddress(new java.net.URL(""));
        call.setOperationName(new QName("http://testPackage.fc.com/, doBasicStuff"));

        call.addParameter("Hello", org.apache.axis.Constants.XSD_STRING, javax.xml.rpc.ParameterMode.IN);

        call.setReturnType(org.apache.axis.Constants.XSD_STRING);

        Object responseWS = call.invoke(new Object[] { inpurparam });

        System.out.println("ReceivingResponse: " + (String) responseWS);

        output = call.getOutputParams();

        String firstName = (String) output.get(new QName("", "firstName"));

    } catch (Exception e) {
        System.err.println(e.toString());
    }

}

给出语法错误

The type java.rmi.RemoteException cannot be resolved. It is indirectly referenced from required .class files

上线

Object responseWS = call.invoke(new Object[] { inpurparam });

所以我添加了“import java.rmi.RemoteException;”声明它给导入语句“导入java.rmi.RemoteException无法解决”错误,所以请告诉如何删除这个错误

【问题讨论】:

  • 在java构建路径中添加“c:/program files/java/jdk1.6.0_18/jre/lib/rt.jar”作为外部jar解决了这个问题

标签: java web-services jar syntax-error remoteexception


【解决方案1】:

你需要添加

import java.rmi.RemoteException;

在你的班级声明之前

【讨论】:

  • 但是当我添加上面的语句时,它给导入语句“导入 java.rmi.RemoteException 无法解决”错误,所以请告诉如何删除这个错误
  • 您需要将相应的 jar 文件添加到您的类路径中。
  • @WhyandHow RemoteException 是 Java SE 标准库的一部分,因此它应该始终可用...您不是在 Android 上吗?如果是这样this question 可能会有所帮助。
  • @WhyandHow 如果您使用的是 Java SE,则无需下载 JAR - 默认情况下,它是平台的一部分,并且自 Java 1.1 以来一直存在。
  • @WhyandHow 在您的 Eclipse 首选项中,Java -> Installed JREs 将告诉您 Eclipse 知道哪些 Java 运行时。然后在项目的库下的构建路径中应该列出一个“JRE 系统库”。如果没有,请使用“添加库”按钮添加一个。
【解决方案2】:

java.rmi 包是标准 Java SE 库的一部分,因此默认情况下它们应该可用于所有 Java 代码。如果您的 IDE 找不到这些类,请检查您的设置、项目构建路径等,并确保它们是正确的,并且项目设置为使用 Java SE 运行时,而不是例如 Android(它提供一些java.* 包,但不是java.rmi)。

【讨论】:

  • 嘿,我的朋友告诉我在 java 构建路径中添加“jdk/jre/lib/rt.jar”作为外部 jar,并且它有效。顺便说一句,谢谢
  • @WhyandHow 这是必要的事实意味着在 Eclipse 中配置 JRE 系统库有问题。我建议您尝试解决问题的原因(即在 Eclipse 首选项中的“已安装的 JRE”中添加新的 JRE 定义),而不是仅仅应用此解决方法来修复症状。
  • 是的,我也认为,因为当我在网上搜索这个错误时,世界上没有其他人有过这个错误:) 有空我一定会这样做
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-14
  • 1970-01-01
  • 2017-10-05
  • 2013-05-14
  • 2017-02-26
相关资源
最近更新 更多