如何跨不同项目(在同一工作区内)实例化java对象,而不导入包含jar的内容?
我正在为基于Java的企业应用程序提供一个新特性。许多工作区/项目将采用我的功能。但我不希望我们导入包含新特性的jar,并将其包含在所有项目的所有单独类路径中。我一直在想,是否可以实例化一个java对象来使用这些方法,但不必在项目的类路径中导入包含jar的对象。除了实例化java对象的一般方法外,spring framework中还有new、clone()、ApplicationContext.getBean/autowiring等,但这些方法通常都希望包含jar的内容出现在上下文中。在任何基于java的框架中,有没有可能促进这个编程例程如何跨不同项目(在同一工作区内)实例化java对象,而不导入包含jar的内容?,java,import,classpath,instance,instantiation,Java,Import,Classpath,Instance,Instantiation,我正在为基于Java的企业应用程序提供一个新特性。许多工作区/项目将采用我的功能。但我不希望我们导入包含新特性的jar,并将其包含在所有项目的所有单独类路径中。我一直在想,是否可以实例化一个java对象来使用这些方法,但不必在项目的类路径中导入包含jar的对象。除了实例化java对象的一般方法外,spring framework中还有new、clone()、ApplicationContext.getBean/autowiring等,但这些方法通常都希望包含jar的内容出现在上下文中。在任何基于
一个工作示例来自Oracle ADF,我们可以在数据模型中使用ApplicationModule。在applicationModule实例的帮助下,我们可以跨工作区中的任何项目访问任何视图对象(读取:java对象),而无需在类路径中导入包含的jar。您可以在运行时加载jar。请参阅本文:类不是在项目中实例化的,而是在运行的JVM中实例化的,JVM能够定位它使用类装入器的类。因此,这样的类必须以某种方式可以访问。或者你可以切换到远程通话或类似的方式。@Lars我之前有机会看了这篇文章。。我看到了很多解决这个问题的潜在方法,但手头的问题仍然是一个悬而未决的问题。本文中提到的最佳和最推荐的解决方案需要/期望使用Jar名称(如类加载器等),或者具有前面提到的依赖性(如Java模块系统)。但是,我可能不会每次都在目标(新项目)中指定Java类的jar文件/依赖项。请参阅本文:类不是在项目中实例化的,而是在运行的JVM中实例化的,JVM能够定位它使用类装入器的类。因此,这样的类必须以某种方式可以访问。或者你可以切换到远程通话或类似的方式。@Lars我之前有机会看了这篇文章。。我看到了很多解决这个问题的潜在方法,但手头的问题仍然是一个悬而未决的问题。本文中提到的最佳和最推荐的解决方案需要/期望使用Jar名称(如类加载器等),或者具有前面提到的依赖性(如Java模块系统)。但是,我可能不会每次都在目标(新项目)中指定Java类的jar文件/依赖项。