Обновить версию Javadoc и автора для всех файлов? - PullRequest
1 голос
/ 29 декабря 2010

Мне нужно синхронизировать тег @version всех классов Javadocs в моем проекте, а также тег @author.Однако я не знаю простой способ сделать это.

Есть ли плагин (предпочтительно плагин maven), который мог бы сделать это?И нет, плагин Maven-релиз не будет делать это для меня.

Ответы [ 2 ]

6 голосов
/ 30 декабря 2010

Я использую @version в сочетании с @since. ИМХО, я думаю @version представляет версию программного обеспечения, когда этот класс был изменен , а @since представляет версию программного обеспечения, когда этот файл / класс был создан

На @author моя политика заключается в том, что каждый разработчик, который когда-либо вносил свой вклад в этот класс (каким-либо основным способом), должен добавить свое имя.

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

Я бы хотел послушать, если кто-то не согласен с этим.

2 голосов
/ 30 декабря 2010

Конечно, есть способ сделать это maven, но он очень необычный:

определите вашу папку src / main / java как <resource> с фиксированным выходным каталогом.Затем реконфигурируйте плагины javadoc и jar, примерно так:

<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <targetPath>sources</targetPath>
            <filtering>true</filtering>
        </resource>
    </resources>

    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.6.1</version>
            <configuration>
                <sourcepath>${project.build.outputDirectory}/sources</sourcepath>
            </configuration>
            <!-- other config stripped -->
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <excludes>
                    <exclude>sources/**</exclude>
                </excludes>
            </configuration>
            <!-- other config stripped -->
        </plugin>
    </plugins>
</build>

Теперь вы можете использовать заполнители в ваших исходных файлах и интерполировать их со свойствами maven (см. фильтрация maven для справки)

...