[ 
https://issues.apache.org/jira/browse/MSITE-971?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17747573#comment-17747573
 ] 

Michael Osipov commented on MSITE-971:
--------------------------------------

Looking at {{help:effective-pom}} the output isn't interpolated as well:
{noformat}
    <implementation.build>${git.commit.id.describe}; 
${git.commit.time}</implementation.build>
    <maven.build.timestamp.format>yyyy-MM-dd 
HH:mm:ssZ</maven.build.timestamp.format>
    <maven.compiler.failOnWarning>true</maven.compiler.failOnWarning>
    <maven.compiler.release>17</maven.compiler.release>
    <maven.compiler.source>17</maven.compiler.source>
    <maven.compiler.target>17</maven.compiler.target>
    <min.maven.version>3.8.8</min.maven.version>
    
<project.build.outputTimestamp>${git.commit.time}</project.build.outputTimestamp>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
{noformat}
So I'd say that the behavior of Maven Site Plugin is consistent with the rest. 
Wether it should be fully interpolated is another question. One could add the 
same approach as done in {{DefaultSiteTool}}. I wonder whether there is a 
better solution to this. I don't want to add special handling just for one 
property...

> Site generation not resolving git.commit.time
> ---------------------------------------------
>
>                 Key: MSITE-971
>                 URL: https://issues.apache.org/jira/browse/MSITE-971
>             Project: Maven Site Plugin
>          Issue Type: Bug
>          Components: property interpolation
>    Affects Versions: 4.0.0-M9
>         Environment: Windows 10 and FreeBSD
>            Reporter: Brad Larrick
>            Assignee: Michael Osipov
>            Priority: Major
>
> I'm using git-commit-id-maven-plugin to set project.build.outputTimestamp as 
> suggested in the Maven Guide Configuring for Reproducible Builds. I've 
> included the plugin in my pom and including the following property definition:
>  
> {code:java}
> <project.build.outputTimestamp>${git.commit.time}</project.build.outputTimestamp>{code}
>  
> When I generate the site, the plugin fails with the message:
> {{site failed: Invalid project.build.outputTimestamp value 
> '${git.commit.time}}}
> This configuration works properly in the maven-jar-plugin, so I did some 
> investigation. The jar plugin is getting the outputTimestamp as a mojo 
> parameter:
>  
> {code:java}
> @Parameter( defaultValue = "${project.build.outputTimestamp}" )
> private String outputTimestamp;
> {code}
> This works properly, with outputTimestamp set to the last commit time.
> In the site-plugin code, the outputTimestamp is being pulled from the project 
> properties:
> {code:java}
> String outputTimestamp = 
> p.getProperties().getProperty("project.build.outputTimestamp");{code}
> In the case the property hasn't been resolved and the returned string is 
> ${git.commit.time}.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to