我想将CVS存储库迁移到Gitlab。我在存储库下有多个模块,而几个模块中有多个jar。我使用cvs2git工具进行了迁移,它的迁移没有任何问题,但是迁移后我无法编译资源库,因为很少有jar损坏。为什么它会损坏?
编译失败时,我只是检查了损坏的罐子,
jar -tvf ./<path>/<myjar>.jar
java.util.zip.ZipException: invalid END header (bad central directory offset)
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:219)
at java.util.zip.ZipFile.<init>(ZipFile.java:149)
at java.util.zip.ZipFile.<init>(ZipFile.java:120)
at sun.tools.jar.Main.list(Main.java:1115)
at sun.tools.jar.Main.run(Main.java:293)
at sun.tools.jar.Main.main(Main.java:1288)
我的CVS和GIT迁移后的jar如下,
GIT
[root@test myrepo]# ls -ltr ./<path>/isorelax-20030108.jar
-rwxr-xr-x 1 root root 192232 Sep 27 16:54 ./<path>/isorelax-20030108.jar
[root@test myrepo]# ls -ltr ./<path>/opt/isorelax-20030108.jar
-rw-r--r-- 1 root root 192232 Sep 27 16:54 ./<path>/opt/isorelax-20030108.jar
CVS
[root@test myrepo]# ls -ltr ./<path>/isorelax-20030108.jar
-rwxr-x--- 1 root root 192743 Jun 10 2015 ./<path>/isorelax-20030108.jar
[root@test myrepo]# ls -ltr ./<path>/opt/isorelax-20030108.jar
-rw-r----- 1 root root 192602 Jun 30 2015 ./<path>/opt/isorelax-20030108.jar
我们在编译时正在访问 ./ opt / isorelax-20030108.jar jar,但在GIT中失败了,但CVS编译成功。
我在jar上运行了CVS状态,其中一个显示为-kb,另一个没有显示。
[root@test myrepo]# cvs status ./<path>/isorelax-20030108.jar
=============================================================
File: isorelax-20030108.jar Status: Up-to-date
Working revision: 1.2.1
Repository revision: 1.2.1 /cvs/myrepo/<path>/isorelax-20030108.jar,v
Sticky Tag: TAG_1 (revision: 1.2.1)
Sticky Date: (none)
Sticky Options: (none)
[root@test myrepo]# cvs status ./<path>/opt/isorelax-20030108.jar
=================================================================
File: isorelax-20030108.jar Status: Up-to-date
Working revision: 1.2.3
Repository revision: 1.2.3 /cvs/myrepo/<path>/opt/isorelax-20030108.jar,v
Sticky Tag: TAG_1 (revision: 1.2.3)
Sticky Date: (none)
Sticky Options: -kb
我们正在使用 Sticky选项:-kb 访问罐子,但仍然失败...
这是什么问题?请提供您对此的想法。