Web系開発メモ

Java, C#, HTML, CSS, JavaScript のことなどを書いてます。

MavenでJavadocのエンコーディングを設定する方法

MavenJavadocエンコーディング文字コード)を設定する方法を書いていきます。

設定方法

下のように、pom.xml のプロパティで指定します。

<project>
  ...
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  </properties>
  ...
</project>

※ プロジェクトタグの属性は省略しています。

プロパティで設定するメリット

プロパティで文字コードを設定すると、プラグインの設定が省略できて便利です。Javadoc プラグイン文字コードを指定すると、設定が複数回になる可能性があります。

<project>
  ...
  <build>
    <plugins>
      <!-- mvn javadoc:javadoc 等を使う場合の設定 -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.4.1</version>
        <configuration>
          <encoding>UTF-8</encoding>
          <docencoding>UTF-8</docencoding>
        </configuration>
      </plugin>
    </plugins>
  </build>
  ...
  <reporting>
    <plugins>
      <!-- mvn site を使う場合の設定 -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.4.1</version>
        <configuration>
          <encoding>UTF-8</encoding>
          <docencoding>UTF-8</docencoding>
        </configuration>
      </plugin>
    </plugins>
  </reporting>
  ...
</project>

mvn javadoc:javadoc 等を使う場合

コマンド mvn javadoc:javadoc 等で Javadoc を出力する場合は、<build> 配下にプラグインを定義して、文字コードを指定する必要があります。

mvn site を使う場合

コマンド mvn siteJavadoc を出力する場合は、<reporting> 配下にプラグインを定義して、文字コードを指定する必要があります。

Javadoc プラグインの設定値

Javadoc プラグインは、以下のタグでエンコーディングの設定ができます。

  1. <encoding>
  2. <docencoding>
  3. <charset>

1. <encoding>

Javadoc の元となるファイル(ソースコード)のエンコーディングを指定します。設定を省略すると、プロパティ <project.build.sourceEncoding> の値になります。

2. <docencoding>

Javadoc(HTMLファイル)のエンコーディングを指定します。設定を省略すると、プロパティ <project.reporting.outputEncoding> の値になります。

3. <charset>

HTML の文字コードmeta タグの charset)を指定します。設定を省略すると、<docencoding> と同じ値になります。