You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "John Poth (JIRA)" <ji...@apache.org> on 2017/07/03 10:58:00 UTC
[jira] [Updated] (KARAF-5235) Remove null values from AssemblyMojo
configuration
[ https://issues.apache.org/jira/browse/KARAF-5235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John Poth updated KARAF-5235:
-----------------------------
Description:
When building Karaf distributions, it would be nice to be able to tweak the distribution using Maven profiles to add a feature or a bundle (etc..). However if the Maven profile which adds these bundles/features is not active we currently get an NPE:
{code}
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
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:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to build assembly
at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:268)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20 more
Caused by: java.lang.NullPointerException
at org.apache.felix.utils.properties.ConfigurationHandler.writeValue(ConfigurationHandler.java:724)
at org.apache.felix.utils.properties.ConfigurationHandler.write(ConfigurationHandler.java:228)
at org.apache.felix.utils.properties.TypedProperties.convertToString(TypedProperties.java:345)
at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:172)
at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:52)
at org.apache.karaf.profile.impl.ProfileBuilderImpl.addAgentConfiguration(ProfileBuilderImpl.java:279)
at org.apache.karaf.profile.impl.ProfileBuilderImpl.setBundles(ProfileBuilderImpl.java:198)
at org.apache.karaf.profile.assembly.Builder.generateProfile(Builder.java:1392)
at org.apache.karaf.profile.assembly.Builder.doGenerateAssembly(Builder.java:556)
at org.apache.karaf.profile.assembly.Builder.generateAssembly(Builder.java:446)
at org.apache.karaf.tooling.AssemblyMojo.doExecute(AssemblyMojo.java:506)
at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:262)
{code}
I've updated a [test|https://github.com/apache/karaf/pull/326/commits/46a7e81b0d6cc2d9b6b3587e33d843572bb3b25b#diff-856de06d8db7e7a4f3e6edc7ce673166R82] to better illustrate the enhancement.
The affected properties are:
* startupRepositories
* bootRepositories
* installedRepositories
* startupBundles
* bootBundles
* installedBundles
* blacklistedBundles
* startupFeatures
* bootFeatures
* installedFeatures
* blacklistedFeatures
* startupProfiles
* bootProfiles
* installedProfiles
* blacklistedProfiles
* blacklistedRepositories
Thanks!
was:
When building Karaf distributions, it would be nice to be able to tweak the distribution using Maven profiles to add a feature or a bundle (etc..). However if the Maven profile which adds these bundles/features is not active we currently get an NPE:
{code}
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
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:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to build assembly
at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:268)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20 more
Caused by: java.lang.NullPointerException
at org.apache.felix.utils.properties.ConfigurationHandler.writeValue(ConfigurationHandler.java:724)
at org.apache.felix.utils.properties.ConfigurationHandler.write(ConfigurationHandler.java:228)
at org.apache.felix.utils.properties.TypedProperties.convertToString(TypedProperties.java:345)
at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:172)
at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:52)
at org.apache.karaf.profile.impl.ProfileBuilderImpl.addAgentConfiguration(ProfileBuilderImpl.java:279)
at org.apache.karaf.profile.impl.ProfileBuilderImpl.setBundles(ProfileBuilderImpl.java:198)
at org.apache.karaf.profile.assembly.Builder.generateProfile(Builder.java:1392)
at org.apache.karaf.profile.assembly.Builder.doGenerateAssembly(Builder.java:556)
at org.apache.karaf.profile.assembly.Builder.generateAssembly(Builder.java:446)
at org.apache.karaf.tooling.AssemblyMojo.doExecute(AssemblyMojo.java:506)
at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:262)
{code}
> Remove null values from AssemblyMojo configuration
> --------------------------------------------------
>
> Key: KARAF-5235
> URL: https://issues.apache.org/jira/browse/KARAF-5235
> Project: Karaf
> Issue Type: Improvement
> Components: karaf-tooling
> Reporter: John Poth
>
> When building Karaf distributions, it would be nice to be able to tweak the distribution using Maven profiles to add a feature or a bundle (etc..). However if the Maven profile which adds these bundles/features is not active we currently get an NPE:
> {code}
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
> 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:116)
> at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
> at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
> at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
> at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
> at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
> at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
> at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
> at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
> Caused by: org.apache.maven.plugin.MojoExecutionException: Unable to build assembly
> at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:268)
> at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
> at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
> ... 20 more
> Caused by: java.lang.NullPointerException
> at org.apache.felix.utils.properties.ConfigurationHandler.writeValue(ConfigurationHandler.java:724)
> at org.apache.felix.utils.properties.ConfigurationHandler.write(ConfigurationHandler.java:228)
> at org.apache.felix.utils.properties.TypedProperties.convertToString(TypedProperties.java:345)
> at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:172)
> at org.apache.felix.utils.properties.TypedProperties.put(TypedProperties.java:52)
> at org.apache.karaf.profile.impl.ProfileBuilderImpl.addAgentConfiguration(ProfileBuilderImpl.java:279)
> at org.apache.karaf.profile.impl.ProfileBuilderImpl.setBundles(ProfileBuilderImpl.java:198)
> at org.apache.karaf.profile.assembly.Builder.generateProfile(Builder.java:1392)
> at org.apache.karaf.profile.assembly.Builder.doGenerateAssembly(Builder.java:556)
> at org.apache.karaf.profile.assembly.Builder.generateAssembly(Builder.java:446)
> at org.apache.karaf.tooling.AssemblyMojo.doExecute(AssemblyMojo.java:506)
> at org.apache.karaf.tooling.AssemblyMojo.execute(AssemblyMojo.java:262)
> {code}
> I've updated a [test|https://github.com/apache/karaf/pull/326/commits/46a7e81b0d6cc2d9b6b3587e33d843572bb3b25b#diff-856de06d8db7e7a4f3e6edc7ce673166R82] to better illustrate the enhancement.
> The affected properties are:
> * startupRepositories
> * bootRepositories
> * installedRepositories
> * startupBundles
> * bootBundles
> * installedBundles
> * blacklistedBundles
> * startupFeatures
> * bootFeatures
> * installedFeatures
> * blacklistedFeatures
> * startupProfiles
> * bootProfiles
> * installedProfiles
> * blacklistedProfiles
> * blacklistedRepositories
> Thanks!
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)