java - 推送project.properties问题

标签 java github netbeans version-control

当我尝试在 Java 项目上与小组合作时,我们总是需要修复库,因为它使用最后一个用户的目录结构(例如,person1 的库位于 c:/documents 中,而 person2 的库位于在 c:/downloads 中,person2 将收到一个找不到库的错误,因为它正在 c:/documents 中查找)

我注意到这些对库的引用存储在 nbproject/project.properties 中,我尝试将其添加到 gitignore,但我读到应该从 gitignore 中排除 project.properties。

在project.properties文件中它显示了这一点

file.reference.byte-buddy-1.8.15.jar-1=C:\\Users\\Cedric\\Desktop\\byte-buddy-1.8.15.jar
file.reference.byte-buddy-agent-1.8.15.jar-1=C:\\Users\\Cedric\\Desktop\\byte-buddy-agent-1.8.15.jar
file.reference.eclipselink.jar-1=C:\\Users\\Cedric\\Desktop\\eclipselink.jar
file.reference.javax.annotation_1.2.0.v201602091430.jar-1=C:\\Users\\Cedric\\Desktop\\javax.annotation_1.2.0.v201602091430.jar
file.reference.javax.persistence.jar-1=C:\\Users\\Cedric\\Desktop\\javax.persistence.jar
file.reference.jfoenix-9.0.8.jar-1=C:\\Users\\Cedric\\Desktop\\jfoenix-9.0.8.jar
file.reference.mockito-core-2.21.0.jar-1=C:\\Users\\Cedric\\Desktop\\mockito-core-2.21.0.jar
file.reference.objenesis-2.6.jar-1=C:\\Users\\Cedric\\Desktop\\objenesis-2.6.jar
#Mon Apr 08 17:43:30 CEST 2019
javadoc.splitindex=true
build.classes.excludes=**/*.java,**/*.form
@@ -58,7 +66,26 @@ javafx.application.implementation.version=1.0
main.class=com.javafx.main.Main
dist.javadoc.dir=${dist.dir}/javadoc
javadoc.additionalparam=
javac.classpath=${file.reference.Downloads-Microsoft_SQL_Server_JDBC_Driver_2.0}\:${file.reference.byte-buddy-1.8.15.jar}\:${file.reference.byte-buddy-agent-1.8.15.jar}\:${file.reference.eclipselink.jar}\:${file.reference.javax.annotation_1.2.0.v201602091430.jar}\:${file.reference.javax.persistence.jar}\:${file.reference.mockito-core-2.21.0.jar}\:${file.reference.objenesis-2.6.jar}\:${libs.eclipselink.classpath}\:${file.reference.jfoenix-9.0.8.jar}\:${libs.junit_4.classpath}
javac.classpath=\
    ${file.reference.Downloads-Microsoft_SQL_Server_JDBC_Driver_2.0}:\
    ${file.reference.byte-buddy-1.8.15.jar}:\
    ${file.reference.byte-buddy-agent-1.8.15.jar}:\
    ${file.reference.eclipselink.jar}:\
    ${file.reference.javax.annotation_1.2.0.v201602091430.jar}:\
    ${file.reference.javax.persistence.jar}:\
    ${file.reference.mockito-core-2.21.0.jar}:\
    ${file.reference.objenesis-2.6.jar}:\
    ${libs.eclipselink.classpath}:\
    ${file.reference.jfoenix-9.0.8.jar}:\
    ${libs.junit_4.classpath}:\
    ${file.reference.byte-buddy-1.8.15.jar-1}:\
    ${file.reference.byte-buddy-agent-1.8.15.jar-1}:\
    ${file.reference.eclipselink.jar-1}:\
    ${file.reference.javax.annotation_1.2.0.v201602091430.jar-1}:\
    ${file.reference.javax.persistence.jar-1}:\
    ${file.reference.jfoenix-9.0.8.jar-1}:\
    ${file.reference.mockito-core-2.21.0.jar-1}:\
    ${file.reference.objenesis-2.6.jar-1}
compile.on.save.unsupported.javafx=true
javadoc.noindex=false
javafx.deploy.backgroundupdate=false

我的猜测是第一个文件引用导致了问题,但我不知道如何解决这个问题。

最佳答案

您无需从版本控制中排除 project.properties 文件。只需更改向项目添加库的方式即可。

正如您所提到的,您和您的团队成员正在为库维护单独的文件夹。不要那样做。在项目中创建一个 lib 文件夹,并将所有(当前)所需的库放入该文件夹中。例如,您的项目文件夹结构应如下所示,

your-project-root-folder
    |-- build
    |-- dist
    |-- nbproject
    |-- lib         <====== the folder which contains all required libraries
    |-- src
    |-- test
    |-- web
    |-- build.xml
    |-- .gitignore

现在在 Netbeans 中,您需要选择 lib 文件夹作为源库目录。按照下面的说明进行操作

然后浏览到保存 Project 文件夹的路径,然后从 lib 文件夹中选择所需的库,如下所示

假设您的项目路径是 C:/users/user/Documents/NetbeansProjects/your-project-root-folder

从那里选择lib

并确保您已选择右侧的相对路径单选按钮。

现在,这会将部分(相对)路径添加到 project.properties 文件。以这种方式添加库后,您不再需要担心将库文件夹从 C:/Documents 切换到 C:/Downloads,反之亦然。

据我所知,我们从版本控制中排除了 builddistnbproject/private/ 目录。由于每次我们构建项目时这些文件夹/文件都会不断重新生成。

这是我在版本控制中维护 Netbeans 项目的方法,供您引用。我的 .gitignore 文件如下所示

/build
/dist
/nbproject/private/

关于java - 推送project.properties问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55598455/

相关文章:

java - org.codehaus.jackson.JsonParseException : Unexpected character ('/' (code 47))

java - 如何使用 java 连接到我公司的 git hub 门户?

c - 使用 Netbeans/gdb 调试 C 会立即终止并出现 SIGSEGV?

Java 多线程 : Unexpected result

java - 向 jTree 节点添加新叶子

java - 如何将本地项目连接到github仓库

java - 如何从 NetBeans 6.8 中删除所有断点?

php - Netbeans Xdebug Vagrant 连接超时

java - 在 if 语句中检查数组的两个返回值

github:如何删除github问题中的附件?