2010-12-29 18 views
1

私のプロジェクトのすべてのクラスJavadocの@versionタグと、@authorタグを同期させておく必要があります。しかし、私はこれを行う簡単な方法を知らない。Javadocのバージョンと作成者をすべてのファイルに更新しますか?

これを達成できるプラグインがありますか(できればmavenプラグインがありますか)。そして、いいえ、maven-releaseプラグインは私のためにこれをしません。

+0

を私が検索を行うと、中に代わります私のIDEの著者。著者が使用したい名前が変更されていない限り、私は著者を変更しません。私は@versionが頻繁に変更されると思うので、頻繁にjavadocの内容には含めません。代わりにjavadocが格納されているディレクトリ(/ oracle/sunと同じように)に、/ jarというディレクトリを追加します。 –

答えて

5

@versionの使用方法は、@sinceと併用してください。 IMHO、@versionは、このクラスがに変更されたときのソフトウェアのバージョンを表していると思います。@sinceは、このファイル/クラスがのときにソフトウェアのバージョンを表します。です。

@authorで私の方針は、そのクラスに寄稿した各開発者が(大部分の方法で)自分の名前を追加する必要があります。

これらのプロセスがすべて手作業であり、コーディング時にクラス作成者/修飾子で処理する必要があることがわかりました。そして、明らかにあなたはファイルの不等なバージョンを持っています。そして、私はそれが理にかなっていると思う。

誰かが違うかどうか聞いてみたいと思います。

+0

私はこれを標準として解決できると思います。今すぐプロジェクトの全部で@authorタグを手動で更新するだけです... – TheLQ

2

はもちろん、それを行うにはMavenの方法がありますが、それは非常に珍しいです:

が固定OUTPUTDIRECTORYで、<resource>としてあなたのsrc /メイン/ javaのフォルダを定義します。そこで、このような何かの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 filteringを参照)

+0

デプロイメントプラグインがJavaDocを作成するとき、フィルタリングされたファイルが表示されるのか、 'src/main/java'を真っ直ぐ見るのでしょうか?私はこれを試したことがないことを意味し、うまくいけばそれは機能する。私は少し疑わしいです。 – Nishant

+0

@Nishant deployプラグインはjavadocを作成しません。javadocプラグインはjavadocを作成しません。そして、ファイルがどこにあるのかをjavadocプラグインに伝えています。 –

+0

このアプローチでは、IntelliJ IDEAがソースファイルをリソースとして考えるようになり、これらのソースファイルに対して適切な補完機能や他のIDE機能を使用することはありません。 – gvlasov

関連する問題