Java SVN可能会破坏我的二进制Jar文件?

Java SVN可能会破坏我的二进制Jar文件?,java,svn,Java,Svn,在昨天的工作中,我向我们的svn项目提交了一个Java小程序Jar文件。项目经理为我推出了它,但当它投入生产时,文件失败了。我可以打开罐子,课程看起来很好 SVN会这么做吗?我不使用svn,我只是想弄明白为什么它可以在我的开发人员身上工作,但在生产环境中却被破坏了?可能是文本/二进制设置还是什么?我多年来一直使用svn存储jar文件,并从我的svn签出直接部署到生产环境,但从来没有出现过问题。我多年来一直使用svn存储jar文件,从我的svn签出直接部署到生产环境,从来没有出现过问题。尝试在生产

在昨天的工作中,我向我们的svn项目提交了一个Java小程序Jar文件。项目经理为我推出了它,但当它投入生产时,文件失败了。我可以打开罐子,课程看起来很好


SVN会这么做吗?我不使用svn,我只是想弄明白为什么它可以在我的开发人员身上工作,但在生产环境中却被破坏了?可能是文本/二进制设置还是什么?

我多年来一直使用svn存储jar文件,并从我的svn签出直接部署到生产环境,但从来没有出现过问题。

我多年来一直使用svn存储jar文件,从我的svn签出直接部署到生产环境,从来没有出现过问题。

尝试在生产时检查本地副本的md5+

openssl dgst /path/to/your/file

或者你对特权有问题?尝试省略SVN以便在生产环境中部署,然后检查是否一切正常

试着在生产时检查本地副本的md5+

openssl dgst /path/to/your/file

或者你对特权有问题?尝试省略SVN以便在生产环境中部署,然后检查是否一切正常

我非常怀疑。
您是否查看了比较文件大小等确保所有文件都已传输

我非常怀疑。
您是否查看了比较文件大小等确保所有文件都已传输

您确实不应该在Subversion中存储二进制文件(例如JAR)。使用工件管理工具,如Artifactory、Nexus或Archiva。您可以通过Maven、Ant/Ivy或各种其他工具访问工件。发布(如WARs)只是提供给发布管理器的URL

如果不正确地设置为文本,SVN会损坏二进制文件,但这是不寻常的。我相信*.jar会默认为二进制,而不是文本,除非有人手工操作不正确


我通常通过复制、将扩展名更改为.zip并打开它们来验证JAR/WAR文件是否正常。

您真的不应该在Subversion中存储二进制文件(例如JAR)。使用工件管理工具,如Artifactory、Nexus或Archiva。您可以通过Maven、Ant/Ivy或各种其他工具访问工件。发布(如WARs)只是提供给发布管理器的URL

如果不正确地设置为文本,SVN会损坏二进制文件,但这是不寻常的。我相信*.jar会默认为二进制,而不是文本,除非有人手工操作不正确


我通常通过复制、将扩展名更改为.zip并将其打开来验证JAR/WAR文件是否正常。

虽然SVN在设计上不会损坏您的文件,但在执行过程中出现问题并最终导致文件损坏并非完全不可想象

因此,一般来说,当您遇到损坏的文件时,您会受到以下两种情况的影响:

  • SVN按设计执行的数据存储的意外影响(例如
    SVN:eol样式
    关键字)
  • 硬件故障(硬盘损坏?)
  • 操作系统或其文件系统中的错误;例如,见

虽然SVN在设计上不会损坏您的文件,但在过程中出现问题并最终导致文件损坏并非完全不可想象

因此,一般来说,当您遇到损坏的文件时,您会受到以下两种情况的影响:

  • SVN按设计执行的数据存储的意外影响(例如
    SVN:eol样式
    关键字)
  • 硬件故障(硬盘损坏?)
  • 操作系统或其文件系统中的错误;例如,见

JAR文件失败时会产生什么错误?这将有助于诊断问题。正如@grantk所说,我从未在SVN中存储二进制文件时遇到过任何损坏问题。如果文件损坏,我认为它不可用。尝试解包归档文件(如果您可以做到这一点,jar就是文件),但您可能希望检查文件的修改日期,以确保它们符合您的预期。jar文件失败时会生成什么错误?这将有助于诊断问题。正如@grantk所说,我从未在SVN中存储二进制文件时遇到过任何损坏问题。如果文件损坏,我认为它不可用。尝试解包归档文件(如果您可以这样做,jar就是文件),但您可能希望检查文件的修改日期,以确保它们符合您的期望。非常感谢您的回复@DaveRead当我得到一个NoClassFoundException时,如果我试图运行一个空白/垃圾Jar文件,我会收到相同的错误@Peter Lawrey是的,我可以像zip文件一样手动打开它,但它不会运行。我还应该提到,他们试图将文件“还原”到已知的工作版本,但没有成功。因此,我正在试图找出可能出现问题的可能情况。非常感谢您的回复@DaveRead当我得到一个NoClassFoundException时,如果我试图运行一个空白/垃圾Jar文件,我会收到相同的错误@Peter Lawrey是的,我可以像zip文件一样手动打开它,但它不会运行。我还应该提到,他们试图将文件“还原”到已知的工作版本,但没有成功。所以我试图找出可能出现问题的可能情况。