【问题标题】:Is it safe to use Guava Resources.getResource() in production? [duplicate]在生产中使用 Guava Resources.getResource() 是否安全? [复制]
【发布时间】:2021-07-23 08:10:26
【问题描述】:

当我们尝试使用 Guava Resources.getResource() 时,我们可以看到来自 IDE 的警告:

“getResource(java.lang.String)”在不稳定的类“com.google.common.io.Resources”中声明,标有@Beta

在生产中使用是否安全?

【问题讨论】:

  • 编写一个测试以确保它能够(并继续做)你需要它做的事情。
  • 请不要被重复的标题气馁,它问的问题基本相同(“我可以/应该在番石榴中使用带有@Beta 注释的类”),答案应该对你有所帮助决定。

标签: java classloader guava


【解决方案1】:

基本上,是的,它是安全的。 Guava 库在 Google 中被广泛使用,因此任何更改都必须仔细考虑,即使对于 @Beta 类,即使只是对于内部用例,最终结果是这不太可能以显着变化的方式进行更改它的语义。

如果您担心某个 API 不稳定,您可以编写一个测试来确保它能够执行(更重要的是,继续执行)您需要它执行的操作。

话虽如此,Resources.getResource(String) 方法的主体是微不足道的——它基本上只是执行someClass.getResource(String),如果结果 URL 为空则抛出异常。您可以简单地自己重新实现该方法,然后您就可以控制它的稳定性。

【讨论】:

    猜你喜欢
    • 2016-09-06
    • 1970-01-01
    • 1970-01-01
    • 2022-11-05
    • 1970-01-01
    • 2022-11-28
    • 1970-01-01
    • 2020-11-28
    • 2016-04-23
    相关资源
    最近更新 更多