java - 如何在运行时访问另一个项目中的类

标签 java netbeans

我有一个项目(称为 ExtensibleApp)。我正在尝试将其模块化。这些模块将依赖于 ExtensibleApp 中已有的一些通用类。

假设我有一个模块 myModule,它扩展了 ExtensibleApp,并且依赖于类 CommonClass.class,我该如何将 CommonClass.class 导入到 myModule 项目中,并访问成员。

class MyModuleClass {
    CommonClass commonClass = new CommonClass();

    private void someMethod() {
        commonClass.method....()
    }
}

我想做的是创建一个可通过模块扩展的项目。这些模块将被加载/下载到 ExtensibleApp 类路径之外的文件夹中。在运行时,我怎样才能将两个 Jars 链接在一起,以便它们可以共享类。

示例目录结构:

main dir/---ExtensibleApp.jar
        /---plugins ---/myModule.jar
                       /chat.jar
                       /videoplayer.jar
                       /like.jar
                       /unlike.jar
                       /etc.jar
                       /etc_etc.jar

最佳答案

有许多框架可以实现这一点。以下是其中一些的列表

  • Maven
  • OSGi,如果您想在模块之间进行更精细的访问控制。
  • Ant
  • Apache Ivy
  • Gradle

我在 eclipse IDE 上使用过 Maven、OSGi 和 Ant。其中我发现 Maven 最简单,OSGi 最有用。

关于java - 如何在运行时访问另一个项目中的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33759158/

相关文章:

maven - 网 bean 8.2。 Maven Web 应用程序不会在 Tomcat 上运行,但会在 Glassfish 服务器上运行

linux - Ubuntu Linux : Netbeans cannot detect Git or Cordova installed

java - 如何在 Netbeans 中使用 UTF-8 字符

java - 如何使用 Spring Boot 2.1.1 从外部文件夹获取 "display"文件

Java:按住鼠标时基于二维数组填充图形

java - 玩!框架路线。长数据类型

java - for循环: cannot find symbol error

java - 我如何检查一个框架在java中是否打开?

javascript - NetBeans 7.4 JavaScript CDNJS

java - 能否从 native 代码访问 java 对象,反之亦然?