【问题标题】:IntelliJ keeps adding duplicate Copyright Template Headers to Java Source filesIntelliJ 不断向 Java 源文件添加重复的版权模板标头
【发布时间】:2015-02-20 11:24:06
【问题描述】:

IntelliJ 添加了太多的版权标头

我将 IntelliJ 设置为在源代码中包含许可证作为标题中的注释。出于某种原因,IntelliJ 在所有文件中重复了几个版权声明。

所以目前所有文件都有一到五个(或更多)重复的许可证头,例如:

/*
 * Copyright [2014] [John Doe]
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */

/*
 * Copyright [2014] [John Doe]
 *
 *    Licensed under the Apache License, Version 2.0 (the "License");
 *    you may not use this file except in compliance with the License.
 *    You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 *    Unless required by applicable law or agreed to in writing, software
 *    distributed under the License is distributed on an "AS IS" BASIS,
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or    implied.
 *    See the License for the specific language governing permissions and
 *    limitations under the License.
 */

如何删除同一标题的多次重复?

我找不到再次删除标题的功能。 IntelliJ 是否提供这样的功能?我应该使用 Linux 板工具并替换 tne 字符串吗?我怎样才能安全地做到这一点?

【问题讨论】:

  • 在您清理副本后,它是否会在某些情况下继续添加副本?一个肯定的答案将大大扩展要解决的问题。
  • 是的,当我在提交期间激活“更新版权”设置时,IntelliJ 添加了多个版权标题。我不会期望这种行为。帮助说“要正确更新版权通知,请确保版权配置文件中指定的关键字是通知定义的一部分。否则,IntelliJ IDEA 将不会检测版权通知,并且不会更新现有通知,而是插入新通知”。我注意到我应该在这里寻找什么关键字。

标签: intellij-idea copyright-display


【解决方案1】:

根据Creating Copyright Profiles - IntelliJ IDEA 13.1.0 Web Help(粗体字是我的):

cmets 中检测版权的关键字 文本框中,键入字符串,以便在版权更新期间将版权声明与其他 cmets 区分开来。

即它必须是一个足够唯一的子字符串,以可靠地识别您在版权配置文件中指定的版权声明。

【讨论】:

    【解决方案2】:

    您可以使用设置它们的相同方法删除重复项。

    按照以下步骤操作:

    • 在设置中打开自定义配置文件。
    • 将用于检测版权的正则表达式设置为版权
    • 将“允许替换版权...”字段设置为您当前版权中重复的内容,例如John Doe 在您的示例中。

    这将用单一版权替换所有重复项。调整它直到匹配为止。

    【讨论】:

      【解决方案3】:

      需要从源文件中删除版权声明和许可的情况极为罕见,因此编辑器/IDE 不太可能提供一键完成此操作的功能。

      如果版权声明/许可相同,则您可以安全地删除除其中一个以外的所有内容。
      如果您是版权所有者,则可以删除所有这些通知。

      要删除它们,只需选择文本并将其删除。

      【讨论】:

      • 这是有史以来最糟糕的评论。只需选择 10,000 个文件中的文本并将其删除。感谢您的帮助。
      猜你喜欢
      • 2021-06-13
      • 2014-08-30
      • 1970-01-01
      • 2015-10-20
      • 1970-01-01
      • 2018-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多