我是新手。
给定企业级 Java 应用程序。源代码由 subversion 管理。
据我了解,一旦我完成了代码,我应该能够在 5 年后编译它并获得相同的结果,但我有点担心 maven 是否可以 100% 准确地处理它:
- maven上网时是否有可能带来损坏的jar(例如网络问题或镜像有不正确的jar)?
- 假设我想在 5 年后重新编译我的代码。是否可能不存在所需的jar?
- 企业应用程序依赖这种“不透明”的外部资源(例如互联网镜像)不是有风险吗?
在我之前的地方,我们利用了那个 svn:external - 我们在 svn 中有一个特殊的目录(供应商分支),用于所有第三个产品(jar)。对于每个产品及其特定版本,都有一个专用目录。应用程序代码使用svn external从供应商分支带来具体的 jar。
在这种配置中,我知道所有受源代码控制的 jar,并且我将能够在 5 年后重建我的应用程序,并将其与 5 年前相同的 jar 打包。
我错过了什么吗?