401 authorization issue while uploading artifact to nexus from Hudson - java

First let me point out what exactly is happening.
Am able to do a successful snapshot as well as release build from local workstation.
Artifacts are also successfully uploaded to nexus.
We have a central hudson installation used by many teams/developers.
Snapshot build working successfully from Hudson
Release build for a particular project fails from Hudson with the following error:
[INFO] Uploading: https://nlliprdcn28098.nl.eu.abnamro.com:8443/nexus/content/repositories/SF_DRA-releases/com/abnamro/gsfg/sigt/reports/dra/sf_dra/1.19/sf_dra-1.19.pom
[INFO] [DEBUG] Using Wagon implementation lightweight from default mapping for protocol https
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [ERROR] BUILD ERROR
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [INFO] Error deploying artifact: Failed to transfer file: https://nlliprdcn28098.nl.eu.abnamro.com:8443/nexus/content/repositories/SF_DRA-releases/com/abnamro/gsfg/sigt/reports/dra/sf_dra/1.19/sf_dra-1.19.pom. Return code is: 401
[INFO]
[INFO] [INFO] ------------------------------------------------------------------------
[INFO] [DEBUG] Trace
[INFO] org.apache.maven.lifecycle.LifecycleExecutionException: Error deploying artifact: Failed to transfer file: https://nlliprdcn28098.nl.eu.abnamro.com:8443/nexus/content/repositories/SF_DRA-releases/com/abnamro/gsfg/sigt/reports/dra/sf_dra/1.19/sf_dra-1.19.pom. Return code is: 401
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:719)
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
[INFO] at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
[INFO] at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
Now, the points to note:
Settings file is proper as the same is working from local
User has access to upload to nexus
Same artifact NOT present in nexus
Only difference between local and hudson settings are that in hudson the password are encrypted. But the same encrypted password is working for release job of a diff project but failing for this.
Hudson ver. 1.377 Maven 2.2.1, Nexus : 1.9.2.3

If you can deploy snapshot and releases from your local workstation and the settings.xml for jenkins are similar than check your version 1.19 from your release for the file: sf_dra-1.19.pom, it could be that you allready released from your local workstation and maven can not deploy the same release number more then one time.
So delete the released files from nexus, and remove also tags form your svn or git. then you can release again with the same number.

Related

Deploying a Java library with Maven in Github Packages

I have been trying to deploy a simple Java library to Github Packages, but regardless the library seems to be deployed/uploaded it is not accessible to projects:
mvn deploy (in the library project)
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) # json-gwt ---
Uploading to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0.jar
Uploaded to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0.jar (11 kB at 2.2 kB/s)
Uploading to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0.pom
Uploaded to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0.pom (6.1 kB at 1.5 kB/s)
Downloading from github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/maven-metadata.xml
Downloaded from github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/maven-metadata.xml (209 B at 246 B/s)
Uploading to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/maven-metadata.xml
Uploaded to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/maven-metadata.xml (314 B at 192 B/s)
Uploading to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0-sources.jar
Uploaded to github: https://maven.pkg.github.com/mylibrary/json-gwt/com/mylibrary/json-gwt/0/json-gwt-0-sources.jar (7.6 kB at 1.5 kB/s)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 20.943 s
[INFO] Finished at: 2023-02-19T17:08:26+08:00
[INFO] ------------------------------------------------------------------------
Process finished with exit code 0
mvn package on the project (in Github Codespaces) using the library above
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.867 s
[INFO] Finished at: 2023-02-19T09:26:21Z
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project app-shared: Could not resolve dependencies for project com.myapp:app-shared:jar:0-SNAPSHOT: Failed to collect dependencies at com.mylibrary:json-gwt:jar:0: Failed to read artifact descriptor for com.mylibrary:json-gwt:jar:0: Could not transfer artifact com.mylibrary:json-gwt:pom:0 from/to github (https://maven.pkg.github.com): status code: 401, reason phrase: Unauthorized (401) -> [Help 1
In the Github organization page, it is set that the Members can publish Public packages.
What could be wrong here?

Maven tries download multimodule dependency on `validate` phase

From a build pipeline I want to run validate phase for things like the enforcer plugin. However it does not work for a multimodule project as it tries to download dependencies from repository which are inside the project. However, compile phase does not do that, but for me it is not an option as it is too slow.
pom.xml:
<module>lib</module>
<module>app</module>
lib/pom.xml
<version>1.2.3</version>
app/pom.xml
<dependency>
<artifactId>lib</artifactId>
<version>1.2.3</version>
</dependency>
So, if I do mvn compile it works fine.
But if I do mvn validate it fails validating app module as it tries to download lib-1.2.3 from maven repo. For some reason it now could not see that the lib is a neighbour dependency. Why?
I have created a small repo: https://github.com/kan-izh/so63963768
mvn compile
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-no-snapshots) # app ---
[INFO]
[INFO] --- maven-resources-plugin:3.1.0:resources (default-resources) # app ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory C:\Workspace\repo\so63963768\app\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) # app ---
[INFO] No sources to compile
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] parent ............................................ SUCCESS [1.612s]
[INFO] lib ............................................... SUCCESS [1.224s]
[INFO] app ............................................... SUCCESS [0.056s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
mvn validate
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-no-snapshots) # app ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] parent ............................................ SUCCESS [0.979s]
[INFO] lib ............................................... SUCCESS [0.015s]
[INFO] app ............................................... FAILURE [0.020s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.180s
[INFO] Finished at: Wed Sep 23 11:27:38 BST 2020
[INFO] Final Memory: 7M/34M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-no-snapshots) on project app: Execution
enforce-no-snapshots of goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce failed: org.apache.maven.shared.dependency.graph.
DependencyGraphBuilderException: Could not resolve following dependencies: [com.so.q63963768:lib:jar:1.2.3 (compile)]: Could not resolve depend
encies for project com.so.q63963768:app:jar:1.2.3: Failure to find com.so.q63963768:lib:jar:1.2.3 in http://xxxxxxxxxxxxx.xx.xxxxxxxxxxxxxxxxx.
com:8081/repository/maven-public/ was cached in the local repository, resolution will not be reattempted until the update interval of nexus has
elapsed or updates are forced -> [Help 1]
This is a good question, and it shows a small flaw in how Maven handles dependencies.
You need to know that for every plugin-goal you can define if dependencies should be resolved, and for which scope. (and there's a small difference if having only the poms is enough, or that you also need the artifacts)
compiler:compile requires the dependencies that are required during compile, compiler:testCompile requires the dependencies that are required during test.
For the enforce goal it is tricky: the goal itself doesn't require to have resolved dependencies, nor do most rules( like requireJavaVersion or requireMavenVersion), but some rules do, like the one you try to enforce.
Ideally rules can define if they need to have resolved dependencies, but right now the API doesn't support that.
So you have a couple of solutions: always run with compile, or have an execution-block bound to the compile-pahse if it requires artifacts.

Where is the created pom.xml

I'm trying to use maven goal of eclipse:to-maven, contained in Apache Maven Eclipse Plugin (RETIRED).
When I executed eclipse:to-maven with -DeclipseDir option, it prints BUILD SUCCESS like the following, but I cannot find the created pom.xml.
C:\Users\sample\Desktop\sample>mvn eclipse:to-maven -DeclipseDir="../jee-oxygen/eclipse"
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-eclipse-plugin:2.10:to-maven (default-cli) # standalone-pom ---
[INFO] Processing file C:\Users\sample\Desktop\jee-oxygen\eclipse\plugins\ch.qos.logback.classic_1.0.7.v20121108-1250.jar
...
skip the middle part
...
[INFO] Installing C:\Users\sample\Desktop\jee-oxygen\eclipse\plugins\org.eclipse.datatools.help_1.7.0.201701131441.jar to C:\Users\sample\.m2\repository\org\eclipse\datatools\help\1.7.0-201701131441\help-1.7.0-201701131441.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 36.557 s
[INFO] Finished at: 2017-11-22T06:00:23+09:00
[INFO] Final Memory: 16M/621M
[INFO] ------------------------------------------------------------------------
I'm using
Windows 10 Pro
Maven 3.5.0
1.8.0_131
Eclipse Oxygen.1 Release (4.7.1)
And I tried it with other version, like maven 3.3.9 and eclipse Juno, but this did not solve my problem.
edited.
I thought eclipse:to-maven goal is for my eclipse project, so I expected the created pom.xml is for my eclipse project.
I know converting to maven project in eclipse UI, but I would like to know if there are plugins or goals that enable to convert eclipse projects to maven projects.
From eclipse:to-maven plugin documentation
Add eclipse artifacts from an eclipse installation to the local repo. This mojo automatically analize the eclipse directory, copy plugins jars to the local maven repo, and generates appropriate poms.
So you should search in your local maven repo.
For example pom generated for org.eclipse.datatools.help should be installed at C:\Users\hyojinbae\.m2\repository\org\eclipse\datatools\help\1.7.0-201701131441\help-1.7.0-201701131441.pom

Missing artifact com.oracle:ojdbc6:jar:11.2.0 ?

I know this question has been asked several times.Even i have successfully done this in WINDOWS.But installed ubuntu OS and all set up is done except this.
Here are the following things i did.I Have oracle 11g i downloaded ojdbc6.jar,Installed Maven and run following command
sudo mvn install:install-file -Dfile=/home/nawaz/Downloads/ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install-file (default-cli) # standalone-pom ---
[INFO] pom.xml not found in ojdbc6.jar
[INFO] Installing /home/nawaz/Downloads/ojdbc6.jar to /root/.m2/repository/com/oracle/ojdbc6/11.2.0/ojdbc6-11.2.0.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.545 s
[INFO] Finished at: 2016-07-15T17:48:32+05:30
[INFO] Final Memory: 8M/208M
[INFO] ------------------------------------------------------------------------
and in .m2 directory
ojdbc6-11.2.0.jar.lastUpdated ojdbc6-11.2.0.pom.lastUpdated I cleaned the mvn -U clean and Update nothing works..Hope someone can find the BUG :)
I faced the same issue. I resolved this issue by checking my maven settings.xml file. My maven local repository is the place where I installed ojdbc6.jar. And when I tried to build my project using eclipse, the maven repository used by eclipse is different. This is causing the problem. I updated maven settings in eclipse and then it's worked fine for me.
To change the maven repo path in eclipse
1.Windows --> preferences
2. Maven --> User Settings
3. And in right side window update the settings
It looks like this:

mvn one:convert don't work?

Finally, I found that some dependency of maven-one-plugin don't install properly. but fix them this plugin work.
question fixed :
I am working on convert a maven 1 project to maven 2 project so I just run this command at the folder of the project:
mvn one:convert
then get a error:
[INFO] Internal error in the plugin manager executing goal
'org.apache.maven.plugins:maven-one-plugin:1.2:convert':
Unable to find the mojo 'org.apache.maven.plugins:maven-one-plugin:1.2:convert' in
the plugin 'org.apache.maven.plugins:maven-one-plugin'
org.apache.maven.model.v3_0_0.PatternSet
Anybody know the reason ? Sorry I just so green on maven and the task is urgent...
Try maven-one-plugin:convert
Please take a look at the plugin manual and check if your configuration matches the required configuration.
http://maven.apache.org/plugins/maven-one-plugin/usage.html
The plugin does exist in central repo
Just wondering if you are running this command using maven 1. If so, can you install maven 2/3 and try?
Edit 1:
Downloaded a sample Maven 1 project from here.
Ran mvn convert:one using the latest maven (maven 3).
Worked successfully
D:\work\sample-echo>mvn one:convert
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-one-plugin:1.2:convert (default-cli) # standalone-pom ---
[INFO] Adding report org.apache.maven.plugins:maven-changes-plugin
[INFO] There are 14 plugin relocators available
[INFO] Writing new pom to: D:\work\sample-echo\pom.xml
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.950s
[INFO] Finished at: Wed Jun 22 15:01:52 IST 2011
[INFO] Final Memory: 4M/15M
[INFO] ------------------------------------------------------------------------

Categories