When you see the bin distribution, it makes sense to you what is required to get started and get all needed jars. It seems easy and straightforward to you. To users new to jbehave and maven, who just want to go through an example or two on their machine to evaluate jbehave, it can take several hours just to get it working. On the other hand, users were able to download a zip of all the jars, it becomes a very straightforward matter for them and takes no time. In this way, users are more likely to evaluate jbehave and have a feeling of success and ease with it.
Date: Fri, 13 May 2011 16:34:41 +0100 From: mauro.tal...@aquilonia.org To: dev@jbehave.codehaus.org Subject: Re: [jbehave-dev] A request to improve adoption The process is: 1. download bin distribution 2. unzip 3. cd lib 4. ant copy-dependencies Then you have all your dependencies (direct and transitive) and can use them manually with Ant however you see fit. To be honest I don't see the big difference with what you're proposing. We won't package all the dependencies in a single jar - it's plainly a bad practice for a number of reasons. But you are free to do so if you so wish once you have executed step 4 above. Cheers On 13/05/2011 16:28, M CHILDS wrote: I understand that maven collects dependencies and is useful. However, maven doesn't complete (I used mvn 2.2 this morning) with the provided pom.xml when I follow this process: 1. download stable core BIN distribution 2. Unzip 3. cd to lib folder 4. mvn clean install If it worked, I would still think the download page could use a 'here are the 4 steps you take to get the final jar(s), after you install maven'. Further, as valuable as maven is and ant + manual dependencies is, it sure would be nice to download 'jbehave-core.jar' and 'jbehave-dependencies.jar' in a single zip file and just drop those two jars into my classpath. This would benefit you. If people give up building because they can't get things working, then you're losing potential adopters. Date: Fri, 13 May 2011 08:22:41 +0200 From: mauro.tal...@aquilonia.org To: dev@jbehave.codehaus.org Subject: Re: [jbehave-dev] A request to improve adoption Hi, the point of using Maven is that you don't need to build the jars, these are already available on Maven Central and will be automatically downloaded when you declare them in your pom.xml: http://repo2.maven.org/maven2/org/jbehave/jbehave-core/ If you don't use Maven, the binary distribution includes an Ant build.xml to allow you to copy all dependencies locally: http://jbehave.org/reference/preview/dependencies.html $cd lib $ant copy-dependencies If you are trying to build from source then you can find the build instructions: http://jbehave.org/reference/preview/building-source.html Also, current build requires Maven 2.2.x and the site part has not been fully migrated to 3.0.x (which is the major non-compat of Maven 2->3). Cheers On 13/05/2011 05:32, M CHILDS wrote: Could the binary release (I'm using 3.3.2) include a fully built jar file? I think this will improve the chances of people checking out and adopting jbehave. I request this because I've spent several hours and haven't gotten the binary release to build into something I can drop into my project. Each issue requires me to learn something brand new, so it is very frustrating, because all I want to do is start using jbehave. The remaining information is for troubleshooting. I'm not sure this is the correct list for troubleshooting, but I've included it in case it is. I am brand new to maven and jbehave. I ran this command under release/lib: mvn clean install The first issue is the weld-se 1.1.0Final jar not being available in the repositories by default (so I added the repo). Known issue. The second is unsolved, and is this: [ERROR] Failed to execute goal org.codehaus.xsite:xsite-maven-plugin:1.2:run (default) on project jbehave-distribution: Failed to run xsite: NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.xsite:xsite-maven-plugin:1.2:run (default) on project jbehave-distribution: Failed to run xsite at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to run xsite at org.codehaus.xsite.mojo.XSiteRunMojo.execute(XSiteRunMojo.java:84) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) ... 19 more Caused by: java.lang.NullPointerException at java.util.Arrays$ArrayList.<init>(Arrays.java:3357) at java.util.Arrays.asList(Arrays.java:3343) at org.codehaus.xsite.Main.<init>(Main.java:111) at org.codehaus.xsite.Main.main(Main.java:65) at org.codehaus.xsite.mojo.XSiteRunMojo.execute(XSiteRunMojo.java:82) ... 21 more [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException