【问题标题】:How to refer a constant value from one project to another project in javajava - 如何将一个项目中的常量值引用到Java中的另一个项目
【发布时间】:2019-06-24 10:44:18
【问题描述】:

我有一个类,我分配了几个常量值,我想在属于其他项目的另一个类中引用它们。

假设我有以下课程:

public class sampleConstants {

    private static final String SOME_VALUE = "ABC";
        private static final String SOME_VALUE2 = "DEF";
.
.
.
.

}

并且“sampleConstants”类属于项目“X”,我想在属于项目“Y”的另一个类中引用该类的常量变量。

有可能吗?如果是,请告诉我。

【问题讨论】:

    标签: java string project constants final


    【解决方案1】:

    您必须首先明确自己的要求:当您更改其中一个常量时,是否意味着您应该立即重新编译两个项目?

    或者您今天在 X 中定义 SOME_VALUE=1 是否可以,然后使用该常量编译并创建一个 JAR ...并将其导入 Y 中。当您明天碰巧更改 SOME_VALUE=2 时,您的项目 Y可以继续使用初始值一段时间吗?

    因此,这里真正的点是:根据如何使用这些常量,其他解决方案可能完全没问题,但也可能是错误的方法。您会看到,当您的两个项目紧密耦合时,并且在一个地方更改常量也需要在第二个地方更改它......那么真正的答案可能是仔细查看您定义项目的方式。也许,只是也许,让需要这些常量的代码驻留在两个不同的项目中并不是一个好的解决方案。

    也许真正的解决方案是确保使用这些常量的所有代码都位于一个项目中。

    【讨论】:

    • 谢谢! Yes 将采用维护属性文件的方法,而不是从其他项目中引用它。
    【解决方案2】:

    您可以将项目“X”jar添加到项目“Y”中,然后您可以访问常量类。

    【讨论】:

      【解决方案3】:

      显然,您可以添加一个带有常量的项目作为另一个项目的 jar 依赖项。任何构建工具都会允许您使用,

      但最好考虑将这些值移动到 *.properties 文件中,并将它们与 java 代码分开。

      【讨论】:

      • 嘿,非常感谢!将与属性文件一起使用。
      • 但确切地说:您仍然需要询问不同的项目是否使用 same 属性文件。最后一件事是:将不同的项目集成到一个更大的组件中时遇到问题......当你在属性文件中出现冲突的值时会发生什么,等等。
      • 是的,是的,会牢记这一点。我有一个要求,我需要多个项目引用同一个属性文件。并且变量不断变化,应该在所有引用的项目中反映出来。
      猜你喜欢
      • 2010-12-14
      • 1970-01-01
      • 1970-01-01
      • 2011-07-31
      • 2015-03-11
      • 1970-01-01
      • 1970-01-01
      • 2013-12-30
      • 1970-01-01
      相关资源
      最近更新 更多