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

ASF GitHub Bot commented on MCOMPILER-381:
------------------------------------------

jorsol commented on code in PR #181:
URL: 
https://github.com/apache/maven-compiler-plugin/pull/181#discussion_r1404812699


##########
src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java:
##########
@@ -1400,10 +1406,11 @@ protected int getRequestThreadCount() {
         return session.getRequest().getDegreeOfConcurrency();
     }
 
-    protected Date getBuildStartTime() {
-        MavenExecutionRequest request = session.getRequest();
-        Date buildStartTime = request == null ? new Date() : 
request.getStartTime();
-        return buildStartTime == null ? new Date() : buildStartTime;
+    private Optional<Instant> getBuildStartTime() {

Review Comment:
   I might be missing something, but I don't expect that anyone extend from 
AbstractCompilerMojo externally, I have never seen maven plugins as public APIs 
that can be extended, in other words protected works for subclasses that are on 
a different package, so this should not break anything.
   
   The only consumer is m-compiler-p itself, and even if this method is used in 
a subclass it should be package-protected (no modifier) since the subclasses 
CompilerMojo and TestCompilerMojo are on the same package.





> Refactoring needed for isDependencyChanged / Using fileExtensions 
> (AbstractCompilerMojo)
> ----------------------------------------------------------------------------------------
>
>                 Key: MCOMPILER-381
>                 URL: https://issues.apache.org/jira/browse/MCOMPILER-381
>             Project: Maven Compiler Plugin
>          Issue Type: Improvement
>    Affects Versions: 3.8.1
>            Reporter: Karl Heinz Marbaise
>            Priority: Minor
>             Fix For: 3.12.0
>
>
> The code in the class AbstractCompilerMojo has a method 
> {{isDependencyChanged}} which uses the attribute {{fileExtensions}} which is 
> being changed within the {{isDependencyChanged}} method. This attribute is 
> also being used by the method {{hasNewFile}} which is a kind of confusing (a 
> control via a global variable).
> Furthermore a change in {{isDependencyChanged}} where replacing {{".class"}} 
> with {{"class"}} results in a [fail which is described here|MCOMPILER-379]. 
> It should be investigated how this code can be made more clear and maybe 
> easier to understand.



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

Reply via email to