【问题标题】:the warnings turned into errors when an other error occurs当发生其他错误时,警告变成错误
【发布时间】:2013-11-05 17:23:19
【问题描述】:

我在一个 maven (maven : V_3_0_4, java : V_1_7_0_03_64b) 项目上工作,有几个子项目。我还使用持续集成服务器 hudson。

我的一些子项目使用来自sun.misc.Signal 的api Signal,它在编译期间被标记为Signal is internal proprietary API and may be removed in a future release。我不讨论这一点。

我目睹了一些奇怪的事情,在我的开发空间提交后,hudson 编译触发并失败,并带有一些华丽的痕迹:

[ERROR] toto.java[42,42] : Signal is internal proprietary API and may be removed in a future release

由于哈德森的配置没有改变,我有点迷茫。另一个奇怪的迹象是,这些错误出现在一个子项目上,但没有出现在其他子项目上,也使用 api Signal 那里只有警告。

在与同事进行一些询问后,我们发现错误出现在其他地方(这是我的错误之一:关注来自Signal 的伪错误),在修复它之后,警告又回来了,错误也出现了Signal 消失了。

见证标志的这种“变化状态”是标准的吗?或者它是否特定于专有 API:即 hudson 检测错误并将专有 API 警告放在错误中,因为它可能相关?总之这里发生了什么?

【问题讨论】:

    标签: maven hudson


    【解决方案1】:

    我遇到了与之前的警告相同的错误。

    [ERROR] <deleted>.java:[6,15] Unsafe is internal proprietary API and may be removed in a future release
    

    当我发现另一个代码段的问题并修复它时,这些问题也得到了解决。但我建议您在终端上执行 mvn clean install 而不是从 IntelliJ 构建。

    【讨论】:

      【解决方案2】:

      这可能不是您的情况,但对我有用的是在项目 POM 文件中使用旧版本的父 POM。问题是我使用的是我自己的聚合 POM,它指向公司父 POM 的最新版本,它指向其中的 JDK 1.7。恢复到使用 JDK 1.6 的旧版本 POM 后,错误消失了。

      我想 1.6 中的警告级别在 1.7 中更改为错误级别。

      【讨论】:

        猜你喜欢
        • 2018-11-04
        • 2020-08-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-16
        • 2022-10-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多