Как добавить метаданные лицензии в зависимости maven? - PullRequest
3 голосов
/ 16 августа 2011

Когда я добавляю зависимость к своим проектам maven, я хотел бы добавить несколько комментариев, чтобы указать, что это такое и под какой лицензией она выпущена, например:

    <!-- XML parser -->
    <!-- Apache License, Version 2.0 -->
    <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesImpl</artifactId>
        <version>2.9.1</version>
        <scope>compile</scope>
    </dependency>

Моя главная задача - это возможностьпроверить (пока вручную), что все лицензии совместимы друг с другом.Документация pom.xml гласит:

Обратите внимание, что проект должен перечислять только лицензии, которые могут применяться непосредственно к этому проекту, а не перечислять лицензии, которые применяются к зависимостям этого проекта.

Есть ли лучший способ для захвата этих метаданных?Может быть, способ "переопределить" информацию <licenses> из POM зависимости, если она отсутствует?

Ответы [ 2 ]

3 голосов
/ 17 августа 2011

Прежде всего, вы не можете перезаписать лицензионную часть pom, потому что она не унаследована .Во-вторых, вы можете автоматически проверять лицензии ваших зависимостей, используя Maven-Licenses-Verifier-Plugin (доступный через Maven Central), который будет обрабатывать такую ​​ситуацию для вас, и, кроме того, вы можете создать отчет об этом ( Пример ).

1 голос
/ 11 апреля 2013

Если я правильно понимаю, плагин Maven Remote Resources и плагин License Maven утверждают, что могут сделать это.

Я работал с плагином License Maven сегодня и, следуя его инструкциям, могу создать отчет о лицензии, в котором указано, какие лицензии отсутствуют. Затем я могу добавить недостающие лицензии и получить отчет обо всех лицензиях в проекте. Однако на самом деле я хотел бы, чтобы эта информация была доступна при создании сайта, но там отсутствует информация о лицензии для сторонних зависимостей. Также было бы полезно иметь возможность добавлять URL-адреса для новых лицензий или URL-адреса для самих зависимостей (эта информация также включена в отчет сайта).

Я посмотрел на плагин , который написал khmarbaise для проверки, используются ли зависимости в проекте, но это не помогает решить проблему отсутствующих лицензий.

...