0

在 WEB-INF/lib foo.jar 中备份到 foo_backup.jar 会影响项目吗?

我的确切问题是...

如果我做上述事情,它会加载两个jar吗?foo.jar 和 foo_backup.jar?

并且因为两个 jar 里面都包含相同的类。当我使用某个类时会考虑哪个(考虑 com.test.TestClass)?是 foo.jar 还是 foo_backup.jar?

有人可以请教吗?我可以删除那个 foo_backup.jar 但我想知道如果出现这种情况会发生什么?

4

3 回答 3

1

而不是foo_backup.jar创建一个名称为 的备份foo.jar.backup

尽管如此,如果您使用备份,foo_backup.jar那么我认为foo.jar将首先加载它,因为它首先出现在列表中,但仍然怀疑,它可能会导致问题(假设备份是旧版本),因为两个 jars 以及其中的类都将可用在类路径中。

于 2012-12-06T15:19:59.937 回答
0

我认为类加载器只会选择第一个并仅加载它,但这将取决于类加载器的实现,这通常不是您可以控制的。这可能会导致各种讨厌的错误。我建议使用@fvu 的建议。

于 2012-12-06T15:20:25.240 回答
0

使用 name(-data).bak 调用备份绝对是一个好习惯 括号中的数据是可选的,因为它在您将拥有多个备份的情况下很有用,因此您可以跟踪最近的那些。

于 2012-12-06T15:39:06.683 回答