使用git时,pom.xml的相对路径无法解析

时间:2013-09-26 07:32:24

标签: java git svn maven merge

我有一个奇怪的问题,我猜是来自git。在我正在尝试构建的项目中的一个pom中,调用了一些带有${project.build.sourceDirectory}/../resources/config/variables.properties之类的配置参数的源生成器(注意../来到某个上层目录)。一切都很好,直到我将主人合并到分支。这是当这个模块的构建开始失败时

[ERROR] Failed to execute goal some.package.maven.plugins:runtime-configs-generator:1.1:generate (generate-runtime-config) on project runtime-configs: /home/user/development/workspace_primary/configs/runtime-configs/src/main/java/../resources/config/files.properties (No such file or directory) -> [Help 1]

我的设置:我在本地使用git和dcommit到远程svn存储库。

似乎无法找到该文件。奇怪的是,合并后文件的相关部分没有变化。

我接下来尝试使用svn进行合并,以确保文件与git merge完全相同。

然后我将使用git进行的合并提交到subversion存储库并使用svn进行了新的签出。它构建没有问题。但是当使用git repo时,我仍然会遇到同样的错误。

我尝试删除本地git分支并从远程refs重新创建它。它仍然没有构建错误。首先我认为这可能是我的终端/ shell(带有zshell的终结符)有问题的相对路径的问题,但是为什么它在合并之前构建,为什么它从svn checkout但不是从git目录构建?当我用pom.xml中的相对路径替换

之类的路径时

${project.basedir}/src/main/resources/config/variables.properties

它也可以从git目录运行。 任何人都可以解释这种奇怪的行为,我很想了解我所缺少的东西。

1 个答案:

答案 0 :(得分:0)

git repo中肯定已经破坏了...我从备份恢复了旧版本,git svn fetch&& git svn rebase,现在工作正常