Issue with ManifestResourceTransformer and string length limit for main class
Hi, I've added a maven-shade-plugin for the infamous Spring issues when creating an uber jar. Anyway in my ManifestResourceTransformer I specify my executable class. When I run mvn clean/install and then try to execute the jar, I get a class not found issue. When I expand the jar file that Maven created and opened the Manifest.MF file, the class name for Main-Class was placed in two lines. This is what it looks like: -- Manifest-Version: 1.0 Build-Jdk: 1.7.0_17 Built-By: Dell Created-By: Apache Maven Main-Class: com.albeingters.buslogics.variablespeedcontroller.BusVSGat e Archiver-Version: Plexus Archiver -- Notice above that the e was put on the next line. For testing purposes, when I truncated the class name a couple of characters, everything seemed to work fine. So looks like Maven has some type of string length limit for the main class. Below is my pom configuration for that shader: plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-shade-plugin/artifactId version2.0/version executions execution phasepackage/phase goals goalshade/goal /goals configuration minimizeJartrue/minimizeJar transformers transformer implementation=org.apache.maven.plugins.shade.resource.AppendingTransformer resourceMETA-INF/spring.handlers/resource /transformer transformer implementation=org.apache.maven.plugins.shade.resource.AppendingTransformer resourceMETA-INF/spring.schemas/resource /transformer transformer implementation=org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer /transformer transformer implementation=org.apache.maven.plugins.shade.resource.ManifestResourceTransformer manifestEntries Main-Class${app.main.class}/Main-Class /manifestEntries /transformer /transformers /configuration /execution /executions /plugin Using JDK 1.7_17 and Maven 3.0.5 command line -- View this message in context: http://maven.40175.n5.nabble.com/Issue-with-ManifestResourceTransformer-and-string-length-limit-for-main-class-tp5752842.html Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
mvn2 structure design for a software product
Hi, I have a general design question on mvn2's project (directory) structure. I'm starting on a project which involves creating a software product to be used by a few clients, with each client having particular customizations on top of the product. I'm thinking of a structure design where I separate the generic/reusable product in its own project, and any client-specific customizations in their own root-level projects... something like this: -- product (uses mvn2 subprojects) pom.xml product-core pom.xml product-service pom.xml ... client1 (which has classes that depend on the product project) pom.xml product-core pom.xml ... client2 (which has classes that depend on the product project) ... clientN. ... --- I know I can set this structure up physically. Not sure how mvn2 will work with this. Basically if I'm building/deploying this product to client 1, I would like to just do invoke the mvn command, with maybe a profile attribute or similar specifying that its for client1, that will build the product project and then just the client1 project. If there is another better option that will facilitate this product/customization package scenario, I would appreciate any suggestions. Thanks in advance! -los -- View this message in context: http://www.nabble.com/mvn2-structure-design-for-a-software-product-tf4474879s177.html#a12758764 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
profiles for separate projects on same build
I'm running into a situation where I need to build a project twice in the same run dependent on two or more separate projects. For example, say I have three subprojects under root set up like this: root -- subproject A -- subproject M -- config.xml -- subproject Z Projects A and Z depend on M but for unrelated tasks. Project M has a config file that will need to have its properties set accordingly. For example, if A is using M, M's config file should have a property like this: env.task = DoA. If Z is using M, M's config file has a different value for that property, e.g. env.task = DoZ. When I do a mvn compile install on the root project, I would like project A's artifact contain M's lib which has its config file with env.task = DoA, and project Z's artifact contain M's lib which has its config file with env.task = DoZ, all in one run. I understand profiles and filters in mvn, but am not sure how tailor them for the above scenario. Any hints/suggestions would be appreciated. Thanks in advance. -los -- View this message in context: http://www.nabble.com/profiles-for-separate-projects-on-same-build-tf3638972s177.html#a10161933 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
profiles / text substitution
I would like to use maven profiles in the pom but would like someway to combine this with text substitution. Basically I would like to have one generic hibernate configuration file that has a ${connection} ready for runtime text substitution. Then I would have 2 external files that contains the appropriate connection properties, e.g. connection-dev.properties and connection-prod.properties. I would like to profile these directly in the pom, and then invoke maven in the command line specifying the appropriate profile. So, for example, when I do this-- mvn -Denv=dev package-- I would like maven to package my hibernate config file, substituting the ${connection} with that found in connection-dev.properties. Is there a way to do this with maven profiles? Thanks in advance! -los -- View this message in context: http://www.nabble.com/profiles---text-substitution-tf3217012s177.html#a8934189 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Correlation between tagging and versioning
Hi Yann, Thanks for the reply. I guess what I was looking for is if I needed to do everything, e.g. tagging, through maven2 or can I do that in SVN and then sync the releases with maven2? -los Yann Le Du-4 wrote: Hi Los, maven-release-plugin is your friend : http://maven.apache.org/plugins/maven-release-plugin/ Tag version and POM version must indeed match. - Yann 2007/1/11, moraleslos [EMAIL PROTECTED]: I'm about to tag my code in my repository to the maven-recommended x.x.x-y-z format-- probably at 1.0.0-alpha-1. I was wondering how this correlates to the version used in my POMs-- currently at 1.0-SNAPSHOT. Shouldn't they match, or are they suppose to be different? I'm new to the tagging/branching of code for release so if anyone has any suggestions, I would appreciate it. I just would like to know how maven2 can help facilitate in code releases since it has some project management functionality built in. Thanks in advance. -los -- View this message in context: http://www.nabble.com/Correlation-between-tagging-and-versioning-tf2957108s177.html#a8272307 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Correlation-between-tagging-and-versioning-tf2957108s177.html#a8278049 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Correlation between tagging and versioning
I'm reading the maven release:prepare and noticed that it will not build because of SNAPSHOT dependencies. In my multiproject, I'm using a dependency that is currently in SNAPSHOT release and won't be upgraded for a while.Is there a way to bypass this since this 3rd party dependency's release version is out of my control? -los Yann Le Du-4 wrote: Hi Los, maven-release-plugin is your friend : http://maven.apache.org/plugins/maven-release-plugin/ Tag version and POM version must indeed match. - Yann 2007/1/11, moraleslos [EMAIL PROTECTED]: I'm about to tag my code in my repository to the maven-recommended x.x.x-y-z format-- probably at 1.0.0-alpha-1. I was wondering how this correlates to the version used in my POMs-- currently at 1.0-SNAPSHOT. Shouldn't they match, or are they suppose to be different? I'm new to the tagging/branching of code for release so if anyone has any suggestions, I would appreciate it. I just would like to know how maven2 can help facilitate in code releases since it has some project management functionality built in. Thanks in advance. -los -- View this message in context: http://www.nabble.com/Correlation-between-tagging-and-versioning-tf2957108s177.html#a8272307 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- View this message in context: http://www.nabble.com/Correlation-between-tagging-and-versioning-tf2957108s177.html#a8286933 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Correlation between tagging and versioning
I'm about to tag my code in my repository to the maven-recommended x.x.x-y-z format-- probably at 1.0.0-alpha-1. I was wondering how this correlates to the version used in my POMs-- currently at 1.0-SNAPSHOT. Shouldn't they match, or are they suppose to be different? I'm new to the tagging/branching of code for release so if anyone has any suggestions, I would appreciate it. I just would like to know how maven2 can help facilitate in code releases since it has some project management functionality built in. Thanks in advance. -los -- View this message in context: http://www.nabble.com/Correlation-between-tagging-and-versioning-tf2957108s177.html#a8272307 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Compilation failure for JSE 6 / maven2
I currently have a maven 2 (v 2.0.4) project set up and working until now. I don't recall changing any code but when I run a mvn compile on my project, I get this error: [ERROR] BUILD FAILURE [INFO] [INFO] Compilation failure Failure executing javac, but could not parse the error: An exception has occurred in the compiler (1.6.0). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you. com.sun.tools.javac.code.Symbol$CompletionFailure: class file for javax.persistence.CascadeType not found [INFO] [INFO] Trace org.apache.maven.BuildFailureException: Compilation failure at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:555) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:475) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:454) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115) at org.apache.maven.cli.MavenCli.main(MavenCli.java:256) 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.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) at org.codehaus.classworlds.Launcher.main(Launcher.java:375) Caused by: org.apache.maven.plugin.CompilationFailureException: Compilation failure at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:505) at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:111) at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534) ... 16 more * This project has a dependency on another persistence project which includes javax.persistence APIs. HOwever, when I just run mvn compile on that persistence project, it compiles properly. Its when I compile this current project that its giving me the error. Funny thing is that I never changed anything related to my code so I don't know why this error is all of a sudden appearing. Any suggestions? THanks in advance. -los -- View this message in context: http://www.nabble.com/Compilation-failure-for-JSE-6---maven2-tf2917197s177.html#a8152537 Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]