⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bundlemojo.java

📁 Xfire文件 用于开发web service 的一个开源工具 很好用的
💻 JAVA
字号:
package org.codehaus.mojo.xfire;import java.io.File;import java.io.IOException;import java.util.Arrays;import java.util.Iterator;import java.util.List;import org.apache.maven.artifact.Artifact;import org.apache.maven.plugin.AbstractMojo;import org.apache.maven.plugin.MojoExecutionException;import org.apache.maven.project.MavenProject;import org.codehaus.plexus.archiver.ArchiverException;import org.codehaus.plexus.archiver.UnArchiver;import org.codehaus.plexus.archiver.manager.ArchiverManager;import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;import org.codehaus.plexus.util.FileUtils;/** * @goal createbundle * @description Creates an xfire bundle */public class BundleMojo extends AbstractMojo {    /**     * The output directory of the assembled distribution file.     *     * @parameter expression="${project.build.outputDirectory}"     * @required     */    protected File outputDirectory;        /**     * Exclusion list     *     * @parameter     */    String excludes = "";        /**     * The Maven Project.     *     * @parameter expression="${project}"     * @required     * @readonly     */    MavenProject project;        /**     * To look up Archiver/UnArchiver implementations     *     * @parameter expression="${component.org.codehaus.plexus.archiver.manager.ArchiverManager}"     * @required     */    protected ArchiverManager archiverManager;        public void execute() throws MojoExecutionException     {        String[] exclude = excludes.split(",");        List excludeList = Arrays.asList(exclude);        getLog().info("Exclusions: " + excludeList);        getLog().info("OutputDirectory: " + outputDirectory);        outputDirectory.mkdirs();                for (Iterator itr = project.getArtifacts().iterator(); itr.hasNext();)        {            Artifact a = (Artifact) itr.next();            if (a.getArtifactId().startsWith("xfire-") && !excludeList.contains(a.getArtifactId()))            {                getLog().info("Found " + a.getArtifactId());                                try                 {                    unpack( a.getFile(), outputDirectory );                }                 catch (MojoExecutionException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }                 catch (NoSuchArchiverException e) {                    // TODO Auto-generated catch block                    e.printStackTrace();                }            }        }    }        protected void unpack( File file, File location )        throws MojoExecutionException, NoSuchArchiverException    {        String archiveExt = FileUtils.getExtension( file.getAbsolutePath() ).toLowerCase();            try        {            UnArchiver unArchiver = this.archiverManager.getUnArchiver( archiveExt );                unArchiver.setSourceFile( file );                unArchiver.setDestDirectory( location );                unArchiver.extract();        }        catch ( IOException e )        {            throw new MojoExecutionException( "Error unpacking file: " + file + "to: " + location, e );        }        catch ( ArchiverException e )        {            throw new MojoExecutionException( "Error unpacking file: " + file + "to: " + location, e );        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -