繁体   English   中英

我们可以在eclipse中从我们的项目中调用另一个项目java类吗

[英]Can we call another project java class from our project in eclipse

import ...

public class TriggerJob {
    
    String jobStatus = "";
    SchedulerMetaData metaData = null;
    
    public void rightNow(HashMap ParamMap) {
        AnotherProjectClass anp = new AnotherProjectClass();
        anp.display();
    }

}

你可以这样做:

在依赖项中,您可以将其他项目添加到您的项目中。 右键单击项目-> 属性-> java 构建路径-> 项目。 在此处添加您的项目。

或者

将项目的类制作成jar并添加到其他项目中

应在类路径中添加依赖项

在运行时,确保引用项目的 JAR 文件都添加到两个案例的类路径中。

知道您使用任何版本的 Eclipse,以下步骤应该可以帮助您:

步骤1。 右键单击 => 项目

第2步。 单击项目属性

步骤#3。 单击 Java 构建路径

第4步。 单击项目选项卡

步骤#5。 单击添加按钮

步骤#6。 选择您要添加的项目

步骤#7。 单击确定按钮

希望这会有所帮助。

我在我的项目中做过这样的事情:

ClientResponse response=WebServiceClient.invokeGRODService("document","get",documentId);
  • invokeGRODService() 是 WebServiceClient 类中提到 URL 的方法。
  • “document”是方法级路径,“get”是类级路径,documentId 是要作为输入传递给其他项目中其他类的参数。
  • invokeGRODService() 如下:

     public static ClientResponse invokeGRODService(String classLevelPath, String methodLevelPath,Object request){
>           LOGGER.info("invokeGRODService()...Start");
>           ClientConfig config = new DefaultClientConfig();
>           Client client = Client.create(config);
>           WebResource service=null;
>           try{
>               service = client.resource(UriBuilder.fromUri(AppProperties.getProperty(AppConstants.GROD_REST_SERVICE_URL)).build());
>       }catch(PropertyNotFoundException pe){
>           LOGGER.error("Error getting the--- "+pe);
>       }
>       try {
>           ClientResponse response = service.path(classLevelPath).path(methodLevelPath).type(MediaType.APPLICATION_XML).post(ClientResponse.class,
> request);
>           if (response.getClientResponseStatus() != ClientResponse.Status.OK) {
>               String errorResponse = response.getEntity(String.class);
>               LOGGER.error("RECEIVED ERROR FROM WEBSERVICE.."+errorResponse);
>           }
>           LOGGER.info("invokeGRODService()...End");
>           return response;
>       } catch (Exception e) {
>           LOGGER.error("Error while calling GRoD web service: ",e);
>       }
>       return null;
>     }
  • 在“AppConstants.GROD_REST_SERVICE_URL”中提及您的 URL。 我通过 AppProperties 将其从常量中取出。

ClientResponse response = service.path(classLevelPath).path(methodLevelPath).type(MediaType.APPLICATION_XML).post(ClientResponse.class, request);

  • 如果 URL 正确,您应该在状态为 200(OK) 的响应对象中获取数据。

您必须打开项目属性,然后单击“Java Build Path”并选择选项卡“Projects”。 添加要从中导入类并进行重建的项目。

project A into jar ,添加到另一个project B的class path中

只要您导入了包含这些类的项目,这就可以正常工作。

假设您使用 Eclipse,以下步骤将起作用:

  1. 右键单击>项目
  2. 单击项目属性
  3. 单击 Java 构建路径
  4. 单击项目选项卡
  5. 单击添加按钮
  6. 选择项目
  7. 点击确定

我有一个类似的问题,最后我意识到问题是调用项目中的类不在src文件夹下,而是在另一个内部包中。 当我删除该文件夹并将文件移动到src文件夹时,一切正常。

您可以通过 2 种方式进行操作。
将另一个项目导出到jar并在您的项目中导入该 jar。

或者

在依赖项中,您可以将其他项目添加到您的项目中。 Right click on project --> properties --> java build path --> projects 在此处添加您的项目

是的。 Project Explorer中右键单击它并选择Properties ,然后转到Java Build Path并选择Projects选项卡。 在此处添加您的其他项目,现在您可以在当前项目中使用其中的类。 但请注意,当您运行它们或在 Eclipse 中调试时,两者都必须打开(否则您会看到红线告诉您找不到类)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM