在JavaDoc中使用maven属性

时间:2015-07-24 06:59:00

标签: java maven javadoc

是否可以使用Maven Javadoc插件在javadoc上扩展maven属性的范围? E.g。

/**
 * My Awesome Class
 * @version ${project.version}
**/

2 个答案:

答案 0 :(得分:1)

我觉得你这样试试。这是两步过程: 首先是将pom属性加载到静态字段中 第二,使用静态字段设置javadoc属性

app.properties中使用此内容

创建src/main/resources
application.version=${project.version}

然后像这样启用maven过滤

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>

在应用程序代码中只读取属性文件

public class MVNLinksHolder{

public static String version = "";

public MVNLinksHolder(){
    ClassPathResource resource = new ClassPathResource( "app.properties" );
    Properties p = new Properties();
    InputStream inputStream = null;
    try {
        inputStream = resource.getInputStream();
        p.load( inputStream );
        version = p.getProperty("application.version");
    }
    catch ( IOException e ) {
        LOGGER.error( e.getMessage(), e );
    }
    finally {
        Closeables.closeQuietly( inputStream );
    }
}
}

然后用它来设置版本

/**
 * My Awesome Class
 * @version = {@value MVNLinksHolder#version}
**/

答案 1 :(得分:0)

  

显示
  字符串
  指定类和成员的访问级别   在Javadocs中展示。可能的值有:public(仅显示公共   类和成员)受保护(仅显示公共和受保护   类和成员)包(显示所有未标记的类和成员   私人)私人(显示所有类和成员)

     

默认值为:protected。用户属性是:show。

https://maven.apache.org/plugins/maven-javadoc-plugin/javadoc-mojo.html

尝试将节目播放给公众