Java 如何将属性文件从一个项目读入另一个项目?

Java 如何将属性文件从一个项目读入另一个项目?,java,maven,Java,Maven,我有两个java项目A和B,如果我在A中有一个credentials.properties文件,并且我想访问项目B中的相同的属性文件,有什么方法可以实现这一点吗 这两个项目是maven build 试试这个: <resource> <directory>${other projects dir}/src/main/resources</directory> <includes>

我有两个java项目A和B,如果我在A中有一个credentials.properties文件,并且我想访问项目B中的相同的属性文件,有什么方法可以实现这一点吗

这两个项目是maven build

试试这个:

<resource>
                <directory>${other projects dir}/src/main/resources</directory>
                <includes>
                    <include>*.properties</include>
                </includes>
                <filtering>true</filtering>
            </resource>

${other projects dir}/src/main/resources
*.物业
符合事实的

将路径指定为完整路径

将属性文件保留在类路径B中,并将项目B设置为项目a的依赖项。

将明文密码提交到源代码管理中通常是个坏主意

在设置文件中使用共享的Maven配置文件如何?($HOME/.m2/settings.xml):


..
资格证书
. 

如果使用Jenkins构建代码,可以使用插件集中管理设置文件:


您的项目仍然可以有一个默认值,关键是真正的密码是在源代码管理下的文件外部设置的。

为什么不将文件复制到新项目中?凭证文件的大小可以有多大?@Juvanis:在文件之间复制资源可能会导致项目中的属性过期,导致难以跟踪应用程序中的错误和异常行为。@juvanis我们不应该排除重复性。这将导致项目A的属性文件打包到项目B中。如果这足够好,那么这种方法可以工作;如果没有,您可以创建从B到a的项目依赖项,然后使用或类似的方法将属性文件作为资源加载。@Tim实际上我有一个依赖于a和B的X项目,因此X的pom包含a和B的引用。@Prerit Tim也是正确的。你提到的这种情况对解决方案来说也不是问题。我能在项目层面上实现吗?这是一个解决方案,但在我的情况下不能实现。
<settings>
    ..
    <profiles>
        <profile>
            <id>credentials</dev>
            <activeByDefault>true</activeByDefault>
            <properties>
                <password1>XXXXX</password1>
                <password2>YYYYY</password2>
                ..
                ..
            </properties>
        </profile>
        ..
    </profiles>
    ..
</settings>