mirror of https://github.com/apache/maven.git
[MNG-7264] Convert maven-core default-bindings to Providers (#550)
This change get rids of Plexus components defined in META-INF/plexus/default-bindings.xml and converts them to Providers.
This commit is contained in:
parent
6c343136b0
commit
6c7d105916
|
@ -19,10 +19,13 @@ package org.apache.maven.lifecycle.mapping;
|
|||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static java.util.stream.Collectors.toMap;
|
||||
|
||||
/**
|
||||
* DefaultLifecycleMapping
|
||||
*/
|
||||
|
@ -38,7 +41,28 @@ public class DefaultLifecycleMapping
|
|||
private Map<String, LifecyclePhase> phases;
|
||||
|
||||
/**
|
||||
* Populates the lifecycle map from the injected list of lifecycle mappings (if not already done).
|
||||
* Default ctor for plexus compatibility: lifecycles are most commonly defined in Plexus XML, that does field
|
||||
* injection. Still, for Plexus to be able to instantiate this class, default ctor is needed.
|
||||
*
|
||||
* @deprecated Should not be used in Java code.
|
||||
*/
|
||||
@Deprecated
|
||||
public DefaultLifecycleMapping()
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Ctor to be used in Java code/providers.
|
||||
*/
|
||||
public DefaultLifecycleMapping( final List<Lifecycle> lifecycles )
|
||||
{
|
||||
this.lifecycleMap = Collections.unmodifiableMap(
|
||||
lifecycles.stream().collect( toMap( Lifecycle::getId, l -> l ) )
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Plexus: Populates the lifecycle map from the injected list of lifecycle mappings (if not already done).
|
||||
*/
|
||||
private void initLifecycleMap()
|
||||
{
|
||||
|
@ -79,6 +103,7 @@ public class DefaultLifecycleMapping
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Lifecycle> getLifecycles()
|
||||
{
|
||||
initLifecycleMap();
|
||||
|
@ -86,6 +111,8 @@ public class DefaultLifecycleMapping
|
|||
return lifecycleMap;
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
public List<String> getOptionalMojos( String lifecycle )
|
||||
{
|
||||
return null;
|
||||
|
@ -112,9 +139,9 @@ public class DefaultLifecycleMapping
|
|||
}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
public Map<String, String> getPhases( String lifecycle )
|
||||
{
|
||||
return LifecyclePhase.toLegacyMap( getLifecyclePhases( lifecycle ) );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,83 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "ear" )
|
||||
@Singleton
|
||||
public final class EarLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public EarLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"generate-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-ear-plugin:3.1.2:generate-application-xml" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-ear-plugin:3.1.2:ear" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "ejb" )
|
||||
@Singleton
|
||||
public final class EjbLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public EjbLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-test-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test-compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-ejb-plugin:3.1.0:ejb" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "jar" )
|
||||
@Singleton
|
||||
public final class JarLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public JarLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-test-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test-compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,102 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "maven-plugin" )
|
||||
@Singleton
|
||||
public final class MavenPluginLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public MavenPluginLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-classes",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-plugin-plugin:3.6.0:descriptor" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-test-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test-compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar,"
|
||||
+ "org.apache.maven.plugins:maven-plugin-plugin:3.6.0:addPluginArtifactMetadata" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
// TODO: MNG-6556: Do not upgrade to 3.0.0-M1 is does not install the plugin prefix metadata
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:2.5.2:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
// TODO: MNG-6556: Do not upgrade to 3.0.0-M1 is does not install the plugin prefix metadata
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,71 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "pom" )
|
||||
@Singleton
|
||||
public final class PomLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public PomLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "rar" )
|
||||
@Singleton
|
||||
public final class RarLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public RarLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-test-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test-compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-rar-plugin:2.4:rar" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
package org.apache.maven.lifecycle.mapping.providers;
|
||||
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
|
||||
import javax.inject.Inject;
|
||||
import javax.inject.Named;
|
||||
import javax.inject.Provider;
|
||||
import javax.inject.Singleton;
|
||||
|
||||
import org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.Lifecycle;
|
||||
import org.apache.maven.lifecycle.mapping.LifecycleMapping;
|
||||
import org.apache.maven.lifecycle.mapping.LifecyclePhase;
|
||||
|
||||
@Named( "war" )
|
||||
@Singleton
|
||||
public final class WarLifecycleMappingProvider
|
||||
implements Provider<LifecycleMapping>
|
||||
{
|
||||
private final LifecycleMapping lifecycleMapping;
|
||||
|
||||
@Inject
|
||||
public WarLifecycleMappingProvider()
|
||||
{
|
||||
HashMap<String, LifecyclePhase> lifecyclePhases = new HashMap<>();
|
||||
lifecyclePhases.put(
|
||||
"process-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"process-test-resources",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test-compile",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"test",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"package",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-war-plugin:3.3.1:war" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"install",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install" )
|
||||
);
|
||||
lifecyclePhases.put(
|
||||
"deploy",
|
||||
new LifecyclePhase( "org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy" )
|
||||
);
|
||||
|
||||
Lifecycle lifecycle = new Lifecycle();
|
||||
lifecycle.setId( "default" );
|
||||
lifecycle.setLifecyclePhases( Collections.unmodifiableMap( lifecyclePhases ) );
|
||||
|
||||
this.lifecycleMapping = new DefaultLifecycleMapping(
|
||||
Collections.singletonList(
|
||||
lifecycle
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public LifecycleMapping get()
|
||||
{
|
||||
return lifecycleMapping;
|
||||
}
|
||||
}
|
|
@ -1,318 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
|
||||
<!--
|
||||
|
||||
Mappings to default lifecycle, specific for each packaging.
|
||||
|
||||
-->
|
||||
|
||||
<component-set>
|
||||
<components>
|
||||
<!--
|
||||
| POM
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>pom</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: pom-lifecycle -->
|
||||
<phases>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: pom-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| JAR
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>jar</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: jar-lifecycle -->
|
||||
<phases>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
|
||||
</compile>
|
||||
<process-test-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources
|
||||
</process-test-resources>
|
||||
<test-compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile
|
||||
</test-compile>
|
||||
<test>
|
||||
org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test
|
||||
</test>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar
|
||||
</package>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: jar-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| EJB
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>ejb</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: ejb-lifecycle -->
|
||||
<phases>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
|
||||
</compile>
|
||||
<process-test-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources
|
||||
</process-test-resources>
|
||||
<test-compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile
|
||||
</test-compile>
|
||||
<test>
|
||||
org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test
|
||||
</test>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-ejb-plugin:3.1.0:ejb
|
||||
</package>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: ejb-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| MAVEN PLUGIN
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>maven-plugin</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: maven-plugin-lifecycle -->
|
||||
<phases>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
|
||||
</compile>
|
||||
<process-classes>
|
||||
org.apache.maven.plugins:maven-plugin-plugin:3.6.0:descriptor
|
||||
</process-classes>
|
||||
<process-test-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources
|
||||
</process-test-resources>
|
||||
<test-compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile
|
||||
</test-compile>
|
||||
<test>
|
||||
org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test
|
||||
</test>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-jar-plugin:3.2.0:jar,
|
||||
org.apache.maven.plugins:maven-plugin-plugin:3.6.0:addPluginArtifactMetadata
|
||||
</package>
|
||||
<!-- MNG-6556: Do not upgrade to 3.0.0-M1 is does not install the plugin prefix metadata -->
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:2.5.2:install
|
||||
</install>
|
||||
<!-- MNG-6556: Do not upgrade to 3.0.0-M1 is does not deploy the plugin prefix metadata -->
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: maven-plugin-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| WAR
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>war</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: war-lifecycle -->
|
||||
<phases>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
|
||||
</compile>
|
||||
<process-test-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources
|
||||
</process-test-resources>
|
||||
<test-compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile
|
||||
</test-compile>
|
||||
<test>
|
||||
org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test
|
||||
</test>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-war-plugin:3.3.1:war
|
||||
</package>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: war-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| EAR
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>ear</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: ear-lifecycle -->
|
||||
<phases>
|
||||
<generate-resources>
|
||||
org.apache.maven.plugins:maven-ear-plugin:3.1.2:generate-application-xml
|
||||
</generate-resources>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-ear-plugin:3.1.2:ear
|
||||
</package>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: ear-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
<!--
|
||||
| RAR
|
||||
|-->
|
||||
<component>
|
||||
<role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
|
||||
<role-hint>rar</role-hint>
|
||||
<implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
|
||||
<configuration>
|
||||
<lifecycles>
|
||||
<lifecycle>
|
||||
<id>default</id>
|
||||
<!-- START SNIPPET: rar-lifecycle -->
|
||||
<phases>
|
||||
<process-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources
|
||||
</process-resources>
|
||||
<compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
|
||||
</compile>
|
||||
<process-test-resources>
|
||||
org.apache.maven.plugins:maven-resources-plugin:3.2.0:testResources
|
||||
</process-test-resources>
|
||||
<test-compile>
|
||||
org.apache.maven.plugins:maven-compiler-plugin:3.8.1:testCompile
|
||||
</test-compile>
|
||||
<test>
|
||||
org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M5:test
|
||||
</test>
|
||||
<package>
|
||||
org.apache.maven.plugins:maven-rar-plugin:2.4:rar
|
||||
</package>
|
||||
<install>
|
||||
org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install
|
||||
</install>
|
||||
<deploy>
|
||||
org.apache.maven.plugins:maven-deploy-plugin:3.0.0-M1:deploy
|
||||
</deploy>
|
||||
</phases>
|
||||
<!-- END SNIPPET: rar-lifecycle -->
|
||||
</lifecycle>
|
||||
</lifecycles>
|
||||
</configuration>
|
||||
</component>
|
||||
|
||||
</components>
|
||||
</component-set>
|
Loading…
Reference in New Issue