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

Lenny Primak edited comment on MNG-8741 at 5/23/25 10:21 PM:
-------------------------------------------------------------

I have created a command line that breaks maven. Any maven project will work, 
including base-pom which is linked in the description.

No release plugin necessary, no signatures, just a simple command line with 
strategically placed quotes, spaces and colons. This reproduces the command 
line that Jenkins construts for release


was (Author: lprimak):
I have created a command line that breaks maven. Any maven project will work, 
including base-pom which is linked in the description

> Lock file erroneously picks up command-line arguments from maven
> ----------------------------------------------------------------
>
>                 Key: MNG-8741
>                 URL: https://issues.apache.org/jira/browse/MNG-8741
>             Project: Maven
>          Issue Type: Bug
>          Components: Artifacts and Repositories
>    Affects Versions: 4.0.0-rc-4
>            Reporter: Lenny Primak
>            Priority: Major
>
> This is a new regression in the master branch. Looks like a resolver bug.
> Looks like maven is picking up arguments from command line to construct a 
> lock file, which fails.
> Example Project (any maven project should work as well): 
> [https://github.com/flowlogix/base-pom]
> Command line:
> {code:java}
> mvn package -Darguments='-Dxxx.yyy="a b" -Dzzz=aaa::bbb:'{code}
> Error log:
> {code:java}
> [ERROR] No plugin found for prefix 'b -Dzzz=aaa' in the current project and 
> in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available 
> from the repositories [local (/home/flowlogix/.m2/repository), central 
> (https://repo.maven.apache.org/maven2)] -> [Help 1]
> org.apache.maven.plugin.prefix.NoPluginFoundForPrefixException: No plugin 
> found for prefix 'b -Dzzz=aaa' in the current project and in the plugin 
> groups [org.apache.maven.plugins, org.codehaus.mojo] available from the 
> repositories [local (/home/flowlogix/.m2/repository), central 
> (https://repo.maven.apache.org/maven2)]
>     at 
> org.apache.maven.plugin.prefix.internal.DefaultPluginPrefixResolver.resolve(DefaultPluginPrefixResolver.java:93)
>     at 
> org.apache.maven.lifecycle.internal.MojoDescriptorCreator.findPluginForPrefix(MojoDescriptorCreator.java:250)
>     at 
> org.apache.maven.lifecycle.internal.MojoDescriptorCreator.getMojoDescriptor(MojoDescriptorCreator.java:188)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:114)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:90)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleStarter.execute(DefaultLifecycleStarter.java:91)
>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:310)
>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:225)
>     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:149)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.doExecute(MavenInvoker.java:461)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:100)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:81)
>     at 
> org.apache.maven.cling.invoker.LookupInvoker.doInvoke(LookupInvoker.java:166)
>     at 
> org.apache.maven.cling.invoker.LookupInvoker.invoke(LookupInvoker.java:136)
>     at org.apache.maven.cling.ClingSupport.run(ClingSupport.java:76)
>     at org.apache.maven.cling.MavenCling.main(MavenCling.java:51)
>     at 
> jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
>     at java.lang.reflect.Method.invoke(Method.java:565)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:255)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:201)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:361)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:314)
> [ERROR] 
>  {code}
> Error Log with real project and njord:
> {code:java}
> [ERROR] Could not open file channel for 
> 'NamedLockKey{name='file:///Users/software/.m2/repository/.locks/artifact~Inc.%20-Djar.skip-if-empty=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dmaven.install.skip=true%20-Dpayara.start.skip=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dnjord.publisher=sonatype-cp%20-Dnjord.autoPublish=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dnjord.publisher.sonatype-cp.releaseRepositoryId=flowlogix-maven-central-portal%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-DaltDeploymentRepository=flowlogix-maven-central-portal~~njord.lock',
>  resources=[Inc. -Djar.skip-if-empty=true                     
> -Dmaven.install.skip=true -Dpayara.start.skip=true                     
> -Dnjord.publisher=sonatype-cp -Dnjord.autoPublish=true                     
> -Dnjord.publisher.sonatype-cp.releaseRepositoryId=flowlogix-maven-central-portal
>                      
> -DaltDeploymentRepository=flowlogix-maven-central-portal::njord]}' after 5 
> attempts; giving up
> java.lang.IllegalStateException: Could not open file channel for 
> 'NamedLockKey{name='file:///Users/software/.m2/repository/.locks/artifact~Inc.%20-Djar.skip-if-empty=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dmaven.install.skip=true%20-Dpayara.start.skip=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dnjord.publisher=sonatype-cp%20-Dnjord.autoPublish=true%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-Dnjord.publisher.sonatype-cp.releaseRepositoryId=flowlogix-maven-central-portal%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20-DaltDeploymentRepository=flowlogix-maven-central-portal~~njord.lock',
>  resources=[Inc. -Djar.skip-if-empty=true                     
> -Dmaven.install.skip=true -Dpayara.start.skip=true                     
> -Dnjord.publisher=sonatype-cp -Dnjord.autoPublish=true                     
> -Dnjord.publisher.sonatype-cp.releaseRepositoryId=flowlogix-maven-central-portal
>                      
> -DaltDeploymentRepository=flowlogix-maven-central-portal::njord]}' after 5 
> attempts; giving up
>     at 
> org.eclipse.aether.named.providers.FileLockNamedLockFactory.lambda$createLock$1(FileLockNamedLockFactory.java:137)
>     at 
> java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1724)
>     at 
> org.eclipse.aether.named.providers.FileLockNamedLockFactory.createLock(FileLockNamedLockFactory.java:111)
>     at 
> org.eclipse.aether.named.support.NamedLockFactorySupport.lambda$doGetLock$0(NamedLockFactorySupport.java:101)
>     at 
> org.eclipse.aether.named.support.NamedLockFactorySupport.lambda$getLockAndRefTrack$3(NamedLockFactorySupport.java:120)
>     at 
> java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1932)
>     at 
> org.eclipse.aether.named.support.NamedLockFactorySupport.getLockAndRefTrack(NamedLockFactorySupport.java:118)
>     at 
> org.eclipse.aether.named.support.NamedLockFactorySupport.doGetLock(NamedLockFactorySupport.java:101)
>     at 
> org.eclipse.aether.named.support.NamedLockFactorySupport.getLock(NamedLockFactorySupport.java:94)
>     at 
> org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapter$AdaptedLockSyncContext.acquire(NamedLockFactoryAdapter.java:206)
>     at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:217)
>     at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:201)
>     at 
> org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:180)
>     at 
> org.apache.maven.impl.resolver.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:165)
>     at 
> org.apache.maven.impl.resolver.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:105)
>     at 
> org.eclipse.aether.internal.impl.DefaultRepositorySystem.readArtifactDescriptor(DefaultRepositorySystem.java:207)
>     at 
> org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:113)
>     at 
> org.apache.maven.plugin.internal.DefaultMavenPluginManager.lambda$getPluginDescriptor$0(DefaultMavenPluginManager.java:203)
>     at 
> org.apache.maven.plugin.DefaultPluginDescriptorCache.get(DefaultPluginDescriptorCache.java:75)
>     at 
> org.apache.maven.plugin.internal.DefaultMavenPluginManager.getPluginDescriptor(DefaultMavenPluginManager.java:201)
>     at 
> org.apache.maven.plugin.internal.DefaultMavenPluginManager.getMojoDescriptor(DefaultMavenPluginManager.java:290)
>     at 
> org.apache.maven.plugin.DefaultBuildPluginManager.getMojoDescriptor(DefaultBuildPluginManager.java:224)
>     at 
> org.apache.maven.lifecycle.internal.MojoDescriptorCreator.getMojoDescriptor(MojoDescriptorCreator.java:229)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:114)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleTaskSegmentCalculator.calculateTaskSegments(DefaultLifecycleTaskSegmentCalculator.java:90)
>     at 
> org.apache.maven.lifecycle.internal.DefaultLifecycleStarter.execute(DefaultLifecycleStarter.java:91)
>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:310)
>     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:225)
>     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:149)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.doExecute(MavenInvoker.java:461)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:100)
>     at 
> org.apache.maven.cling.invoker.mvn.MavenInvoker.execute(MavenInvoker.java:81)
>     at 
> org.apache.maven.cling.invoker.LookupInvoker.doInvoke(LookupInvoker.java:166)
>     at 
> org.apache.maven.cling.invoker.LookupInvoker.invoke(LookupInvoker.java:136)
>     at org.apache.maven.cling.ClingSupport.run(ClingSupport.java:76)
>     at org.apache.maven.cling.MavenCling.main(MavenCling.java:51)
>     at 
> jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
>     at java.lang.reflect.Method.invoke(Method.java:565)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:255)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:201)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:361)
>     at 
> org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:314)
> [ERROR] 
> [ERROR] Re-run Maven using the '-X' switch to enable verbose output {code}



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

Reply via email to