[ https://issues.apache.org/jira/browse/MNG-8024?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17809939#comment-17809939 ]
ASF GitHub Bot commented on MNG-8024: ------------------------------------- gnodet commented on PR #1388: URL: https://github.com/apache/maven/pull/1388#issuecomment-1906038901 > Yes, that is exactly what is happening, the incremental build basically taks "bits" of model and would like to serialize those with DataOutputStream... I'm not sure we should support this use case, as I think the whole model will be serialised anyway. The lambdas in the list/properties objects do retain a reference to the parent up to the Model. This is needed in order to implement the modification methods while keeping the original reference. So while this may actually make things work, I'm not completely sure we should do it... It may be easier to simplify check if there's a `getDelegate()` method, and if so, serialize that object instead. > Maven4 models are not serializable, despite marked as such > ---------------------------------------------------------- > > Key: MNG-8024 > URL: https://issues.apache.org/jira/browse/MNG-8024 > Project: Maven > Issue Type: Bug > Components: API > Reporter: Tamas Cservenak > Priority: Major > Fix For: 4.0.0, 4.0.0-alpha-13 > > > Maven4 models are marked as {{{}Serializable{}}}, but they are not. Example: > {noformat} > Caused by: java.io.NotSerializableException: > org.apache.maven.model.ModelBase$$Lambda/0x00007fd7ac284278 > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1200) > at > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1585) > at > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1542) > at > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1451) > at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1194) > at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:358) > at > io.takari.incrementalbuild.spi.DefaultBuildContextState.writeMap(DefaultBuildContextState.java:126) > at > io.takari.incrementalbuild.spi.DefaultBuildContextState.storeTo(DefaultBuildContextState.java:109) > at > io.takari.incrementalbuild.spi.AbstractBuildContext.commit(AbstractBuildContext.java:525) > at > io.takari.incrementalbuild.maven.internal.MavenBuildContextFinalizer.afterMojoExecutionSuccess(MavenBuildContextFinalizer.java:83) > at > org.apache.maven.execution.scope.internal.MojoExecutionScope.afterMojoExecutionSuccess(MojoExecutionScope.java:129) > at > org.apache.maven.plugin.CompoundMojoExecutionListener.afterMojoExecutionSuccess(CompoundMojoExecutionListener.java:42) > {noformat} > -- This message was sent by Atlassian Jira (v8.20.10#820010)