can you check if my last commits fixed it? However, you have to build it
yourself as I'm getting a 500 when trying to deploy to apache right now,
so no snaps are deployed yet.
HTH,
-Lukas
Jeff Jensen wrote:
Yes, :-) 3.0-beta-4-SNAPSHOT. The fixes over the past months have
been very helpful, so I'm using the snapshot.
Sorry for my wrong word choice; you correctly suggest the deploy part,
not site gen part. I have a Hudson job that runs "mvn site-deploy
-e", so I accidentally combined the two phases as one "site gen".
Stack trace from Hudson log:
08:23:15 [ERROR] Failed to execute goal
org.apache.maven.plugins:maven-site-plugin:3.0-beta-4-SNAPSHOT:deploy
(default-deploy) on project yyy-parent: Missing site information in
the distribution management of the project Parent Maven POM
(com.xxx:xxx-maven-parent:1.0.0-SNAPSHOT) -> [Help 1]
08:23:15 org.apache.maven.lifecycle.LifecycleExecutionException:
Failed to execute goal
org.apache.maven.plugins:maven-site-plugin:3.0-beta-4-SNAPSHOT:deploy
(default-deploy) on project yyy-parent: Missing site information in
the distribution management of the project Parent Maven POM
(com.xxx:xxx-maven-parent:1.0.0-SNAPSHOT)
08:23:15 at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
08:23:15 at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
08:23:15 at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
08:23:15 at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
08:23:15 at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
08:23:15 at
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
08:23:15 at
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
08:23:15 at
org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
08:23:15 at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
08:23:15 at org.apache.maven.cli.MavenCli.execute(MavenCli.java:534)
08:23:15 at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
08:23:15 at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
08:23:15 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
08:23:15 at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
08:23:15 at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
08:23:15 at java.lang.reflect.Method.invoke(Method.java:597)
08:23:15 at
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
08:23:15 at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
08:23:15 at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
08:23:15 at
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
08:23:15 Caused by: org.apache.maven.plugin.MojoExecutionException:
Missing site information in the distribution management of the project
Parent Maven POM (com.xxx:xxx-maven-parent:1.0.0-SNAPSHOT)
08:23:15 at
org.apache.maven.plugins.site.AbstractDeployMojo.getSite(AbstractDeployMojo.java:701)
08:23:15 at
org.apache.maven.plugins.site.SiteDeployMojo.getDeployRepositoryID(SiteDeployMojo.java:52)
08:23:15 at
org.apache.maven.plugins.site.AbstractDeployMojo.execute(AbstractDeployMojo.java:155)
08:23:15 at
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:107)
08:23:15 at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
08:23:15 ... 19 more
On Tue, Mar 8, 2011 at 1:18 PM, Lukas Theussl<[email protected]> wrote:
Hi Jeff,
I deduce you are testing my current development version...? ;)
I don't see how this particular commit could have broken site generation as
it only concerns the DeployMojo. However, I see that it could break
site:stage-deploy, is this what you are seeing?
I don't exclude that I broke something somewhere else, but I need more info
to track it down, a stack trace or better a test project would help.
Cheers,
-Lukas
Jeff Jensen wrote:
Hi Lukas!
I have a question on this commit, as it causes our site gen to now fail.
With the following change:
+ if ( site == null )
+ {
+ throw new MojoExecutionException(
+ "Missing site information in the distribution management
of the project " + name );
+ }
the following use case configuration encounters the above exception:
- a project parent pom has a<distributionManagement><site> element
(modules of course inherit it)
- a corporate parent pom does not have a<distributionManagement><site>
element
We never run site gen for the corporate parent pom, so any
<distributionManagement><site> element added will make it work but is
unneeded/fake.
So wondering if this configuration use case was considered and the
correct answer is to add a "fake"<site> element to the corporate
parent or possibly this check for site definition needs tweaking (can
it consider the effective one?)?
On Fri, Mar 4, 2011 at 6:58 AM,<[email protected]> wrote:
Author: ltheussl
Date: Fri Mar 4 12:58:01 2011
New Revision: 1077924
URL: http://svn.apache.org/viewvc?rev=1077924&view=rev
Log:
refactor: re-use getSite() so we properly catch null values also in
stage-deploy
Modified:
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractDeployMojo.java
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteDeployMojo.java
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
Modified:
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractDeployMojo.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractDeployMojo.java?rev=1077924&r1=1077923&r2=1077924&view=diff
==============================================================================
---
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractDeployMojo.java
(original)
+++
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractDeployMojo.java
Fri Mar 4 12:58:01 2011
@@ -26,6 +26,8 @@ import java.util.Locale;
import org.apache.maven.artifact.manager.WagonConfigurationException;
import org.apache.maven.artifact.manager.WagonManager;
+import org.apache.maven.model.DistributionManagement;
+import org.apache.maven.model.Site;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.logging.Log;
import org.apache.maven.project.MavenProject;
@@ -552,4 +554,43 @@ public abstract class AbstractDeployMojo
return parent;
}
+
+ /**
+ * Extract the distributionManagment site from the given
MavenProject.
+ *
+ * @param project the MavenProject. Not null.
+ *
+ * @return the project site. Not null.
+ * Also site.getUrl() and site.getId() are guaranteed to be not
null.
+ *
+ * @throws MojoExecutionException if any of the site info is
missing.
+ */
+ protected static Site getSite( final MavenProject project )
+ throws MojoExecutionException
+ {
+ final String name = project.getName() + " ("
+ + project.getGroupId() + ":" + project.getArtifactId() + ":"
+ project.getVersion() + ")";
+
+ final DistributionManagement distributionManagement =
project.getDistributionManagement();
+
+ if ( distributionManagement == null )
+ {
+ throw new MojoExecutionException( "Missing distribution
management in project " + name );
+ }
+
+ final Site site = distributionManagement.getSite();
+
+ if ( site == null )
+ {
+ throw new MojoExecutionException(
+ "Missing site information in the distribution management
of the project " + name );
+ }
+
+ if ( site.getUrl() == null || site.getId() == null )
+ {
+ throw new MojoExecutionException( "Missing site data:
specify url and id for project " + name );
+ }
+
+ return site;
+ }
}
Modified:
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteDeployMojo.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteDeployMojo.java?rev=1077924&r1=1077923&r2=1077924&view=diff
==============================================================================
---
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteDeployMojo.java
(original)
+++
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteDeployMojo.java
Fri Mar 4 12:58:01 2011
@@ -19,10 +19,8 @@ package org.apache.maven.plugins.site;
* under the License.
*/
-import org.apache.maven.model.DistributionManagement;
import org.apache.maven.model.Site;
import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.project.MavenProject;
/**
* Deploys the generated site using<code>scp</code> or<code>file</code>
@@ -68,30 +66,4 @@ public class SiteDeployMojo
return site.getUrl();
}
-
- private static Site getSite( final MavenProject project )
- throws MojoExecutionException
- {
- final DistributionManagement distributionManagement =
project.getDistributionManagement();
-
- if ( distributionManagement == null )
- {
- throw new MojoExecutionException( "Missing distribution
management information in the project." );
- }
-
- final Site site = distributionManagement.getSite();
-
- if ( site == null )
- {
- throw new MojoExecutionException(
- "Missing site information in the distribution management
element in the project." );
- }
-
- if ( site.getUrl() == null || site.getId() == null )
- {
- throw new MojoExecutionException( "Missing site data for
deploy: specify url and id!" );
- }
-
- return site;
- }
}
Modified:
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
URL:
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java?rev=1077924&r1=1077923&r2=1077924&view=diff
==============================================================================
---
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
(original)
+++
maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
Fri Mar 4 12:58:01 2011
@@ -93,6 +93,7 @@ public class SiteStageDeployMojo
* @return the site URL for staging
*/
private String getStagingSiteURL( String usersStagingSiteURL )
+ throws MojoExecutionException
{
String topLevelURL = null;
@@ -106,7 +107,7 @@ public class SiteStageDeployMojo
{
// The user didn't specify a URL, use the top level target
dir
topLevelURL =
- getTopLevelParent( project
).getDistributionManagement().getSite().getUrl() + "/" +
DEFAULT_STAGING_DIRECTORY;
+ getSite( getTopLevelParent( project ) ).getUrl() + "/" +
DEFAULT_STAGING_DIRECTORY;
getLog().debug( "stagingSiteURL NOT specified, using the top
level project: " + topLevelURL );
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]