Examples of EclipseSourceDir


Examples of com.alibaba.citrus.maven.eclipse.base.eclipse.EclipseSourceDir

        if (sourceDirs != null) {
            boolean foundMetaInfBaseDirectory = false;

            for (int i = 0; i < sourceDirs.length; i++) {
                EclipseSourceDir esd = sourceDirs[i];

                if (esd.getPath().equals(metaInfBaseDirectory)) {
                    foundMetaInfBaseDirectory = true;
                    break;
                }
            }

            if (!foundMetaInfBaseDirectory) {
                EclipseSourceDir dir =
                        new EclipseSourceDir(metaInfBaseDirectory, null, true, false, null, null, false);

                EclipseSourceDir[] newSourceDirs = new EclipseSourceDir[sourceDirs.length + 1];
                newSourceDirs[sourceDirs.length] = dir;

                System.arraycopy(sourceDirs, 0, newSourceDirs, 0, sourceDirs.length);
View Full Code Here

Examples of com.alibaba.citrus.maven.eclipse.base.eclipse.EclipseSourceDir

            EclipseSourceDir[] sourceDirs = config.getSourceDirs();
            EclipseSourceDir[] newSourceDirs = new EclipseSourceDir[sourceDirs.length + 1];
            System.arraycopy(sourceDirs, 0, newSourceDirs, 0, sourceDirs.length);
            newSourceDirs[sourceDirs.length] =
                    new EclipseSourceDir(EclipseManifestWriter.GENERATED_RESOURCE_DIRNAME,
                                         null,
                                         true,
                                         false,
                                         null,
                                         null,
View Full Code Here

Examples of com.alibaba.citrus.maven.eclipse.base.eclipse.EclipseSourceDir

        // Map<String,List<EclipseSourceDir>>
        Map byOutputDir = new HashMap();

        for (int j = 0; j < config.getSourceDirs().length; j++) {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            // List<EclipseSourceDir>
            List byOutputDirs = (List) byOutputDir.get(dir.getOutput());
            if (byOutputDirs == null) {
                // ArrayList<EclipseSourceDir>
                byOutputDir.put(dir.getOutput() == null ? defaultOutput : dir.getOutput(), byOutputDirs =
                        new ArrayList());
            }
            byOutputDirs.add(dir);
        }

        for (int j = 0; j < config.getSourceDirs().length; j++) {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            log.debug("Processing classpath for: " + dir.toString() + "; default output=" + defaultOutput);

            boolean isSpecial = false;

            // handle resource with nested output folders
            if (dir.isResource()) {
                // Check if the output is a subdirectory of the default output,
                // and if the default output has any sources that copy there.

                if (dir.getOutput() != null // resource output dir is set
                    && !dir.getOutput().equals(defaultOutput) // output dir is not default target/classes
                    && dir.getOutput().startsWith(defaultOutput) // ... but is nested
                    && byOutputDir.get(defaultOutput) != null // ???
                    && !((List) byOutputDir.get(defaultOutput)).isEmpty() // ???
                        ) {
                    // do not specify as source since the output will be nested. Instead, mark
                    // it as a todo, and handle it with a custom build.xml file later.

                    log.debug("Marking as special to prevent output folder nesting: " + dir.getPath() + " (output="
                              + dir.getOutput() + ")");

                    isSpecial = true;
                    specialSources.add(dir);
                }
            }

            writer.startElement(ELT_CLASSPATHENTRY);

            writer.addAttribute(ATTR_KIND, "src"); //$NON-NLS-1$
            writer.addAttribute(ATTR_PATH, dir.getPath());

            if (!isSpecial && dir.getOutput() != null && !defaultOutput.equals(dir.getOutput())) {
                writer.addAttribute(ATTR_OUTPUT, dir.getOutput());
            }

            String includes = dir.getIncludeAsString();
            if (StringUtils.isNotEmpty(includes)) {
                writer.addAttribute(ATTR_INCLUDING, includes);
            }

            String excludes = dir.getExcludeAsString();
            if (StringUtils.isNotEmpty(excludes)) {
                writer.addAttribute(ATTR_EXCLUDING, excludes);
            }

            writer.endElement();
        }

        // handle the special sources.
        if (!specialSources.isEmpty()) {
            log.info("Creating maven-eclipse.xml Ant file to handle resources");

            try {
                Writer buildXmlWriter =
                        new OutputStreamWriter(new FileOutputStream(new File(config.getEclipseProjectDirectory(),
                                                                             "maven-eclipse.xml")), "UTF-8");
                PrettyPrintXMLWriter buildXmlPrinter = new PrettyPrintXMLWriter(buildXmlWriter);

                buildXmlPrinter.startElement("project");
                buildXmlPrinter.addAttribute("default", "copy-resources");

                buildXmlPrinter.startElement("target");
                buildXmlPrinter.addAttribute(NAME, "init");
                // initialize filtering tokens here
                buildXmlPrinter.endElement();

                buildXmlPrinter.startElement("target");
                buildXmlPrinter.addAttribute(NAME, "copy-resources");
                buildXmlPrinter.addAttribute("depends", "init");

                for (Iterator it = specialSources.iterator(); it.hasNext(); ) {
                    // TODO: merge source dirs on output path+filtering to reduce
                    // <copy> tags for speed.
                    EclipseSourceDir dir = (EclipseSourceDir) it.next();
                    buildXmlPrinter.startElement("copy");
                    buildXmlPrinter.addAttribute("todir", dir.getOutput());
                    buildXmlPrinter.addAttribute("filtering", "" + dir.isFiltering());

                    buildXmlPrinter.startElement("fileset");
                    buildXmlPrinter.addAttribute("dir", dir.getPath());
                    if (dir.getIncludeAsString() != null) {
                        buildXmlPrinter.addAttribute("includes", dir.getIncludeAsString());
                    }
                    if (dir.getExcludeAsString() != null) {
                        buildXmlPrinter.addAttribute("excludes", dir.getExcludeAsString());
                    }
                    buildXmlPrinter.endElement();

                    buildXmlPrinter.endElement();
                }
View Full Code Here

Examples of com.alibaba.citrus.maven.eclipse.base.eclipse.EclipseSourceDir

            writeWarOrEarResources(writer, config.getProject(), config.getLocalRepository());
        }

        for (int j = 0; j < config.getSourceDirs().length; j++) {
            EclipseSourceDir dir = config.getSourceDirs()[j];
            // test src/resources are not added to wtpmodules
            if (!dir.isTest()) {
                // <wb-resource deploy-path="/" source-path="/src/java" />
                writer.startElement(ELT_WB_RESOURCE);
                writer.addAttribute(ATTR_DEPLOY_PATH, target);
                writer.addAttribute(ATTR_SOURCE_PATH, dir.getPath());
                writer.endElement();
            }
        }

        writer.endElement(); // wb-module
View Full Code Here

Examples of com.alibaba.citrus.maven.eclipse.base.eclipse.EclipseSourceDir

            // write out the dependencies.
            writeWarOrEarResources(writer, config.getProject(), localRepository);
        }

        for (int j = 0; j < sourceDirs.length; j++) {
            EclipseSourceDir dir = sourceDirs[j];
            // test src/resources are not added to wtpmodules
            if (!dir.isTest()) {
                // <wb-resource deploy-path="/" source-path="/src/java" />
                writer.startElement(ELT_WB_RESOURCE);
                writer.addAttribute(ATTR_DEPLOY_PATH, target);
                writer.addAttribute(ATTR_SOURCE_PATH, dir.getPath());
                writer.endElement();
            }
        }

        writer.endElement(); // wb-module
View Full Code Here

Examples of org.apache.maven.plugin.eclipse.EclipseSourceDir

        // Map<String,List<EclipseSourceDir>>
        Map byOutputDir = new HashMap();

        for ( int j = 0; j < config.getSourceDirs().length; j++ )
        {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            // List<EclipseSourceDir>
            List byOutputDirs = (List) byOutputDir.get( dir.getOutput() );
            if ( byOutputDirs == null )
            {
                // ArrayList<EclipseSourceDir>
                byOutputDir.put( dir.getOutput() == null ? defaultOutput : dir.getOutput(), byOutputDirs =
                    new ArrayList() );
            }
            byOutputDirs.add( dir );
        }

        for ( int j = 0; j < config.getSourceDirs().length; j++ )
        {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            log.debug( "Processing " + ( dir.isResource() ? "re" : "" ) + "source " + dir.getPath() + ": output=" +
                dir.getOutput() + "; default output=" + defaultOutput );

            boolean isSpecial = false;

            // handle resource with nested output folders
            if ( dir.isResource() )
            {
                // Check if the output is a subdirectory of the default output,
                // and if the default output has any sources that copy there.

                if ( dir.getOutput() != null // resource output dir is set
                    &&
                    !dir.getOutput().equals( defaultOutput ) // output dir is not default target/classes
                    && dir.getOutput().startsWith( defaultOutput ) // ... but is nested
                    && byOutputDir.get( defaultOutput ) != null // ???
                    && !( (List) byOutputDir.get( defaultOutput ) ).isEmpty() // ???
                )
                {
                    // do not specify as source since the output will be nested. Instead, mark
                    // it as a todo, and handle it with a custom build.xml file later.

                    log.debug( "Marking as special to prevent output folder nesting: " + dir.getPath() + " (output=" +
                        dir.getOutput() + ")" );

                    isSpecial = true;
                    specialSources.add( dir );
                }
            }

            writer.startElement( ELT_CLASSPATHENTRY );

            writer.addAttribute( ATTR_KIND, "src" ); //$NON-NLS-1$
            writer.addAttribute( ATTR_PATH, dir.getPath() );

            if ( !isSpecial && dir.getOutput() != null && !defaultOutput.equals( dir.getOutput() ) )
            {
                writer.addAttribute( ATTR_OUTPUT, dir.getOutput() );
            }

            if ( StringUtils.isNotEmpty( dir.getInclude() ) )
            {
                writer.addAttribute( ATTR_INCLUDING, dir.getInclude() );
            }

            String excludes = dir.getExclude();

            if ( dir.isResource() )
            {
                // automatically exclude java files: eclipse doesn't have the concept of resource directory so it will
                // try to compile any java file found in maven resource dirs
                excludes = StringUtils.isEmpty( excludes ) ? "**/*.java" : excludes + "|**/*.java";
            }
View Full Code Here

Examples of org.apache.maven.plugin.eclipse.EclipseSourceDir

            {
                String sourceRoot =
                    IdeUtils.toRelativeAndFixSeparator( projectBaseDir, sourceRootFile,
                                                        !projectBaseDir.equals( basedir ) );

                directories.add( new EclipseSourceDir( sourceRoot, output, false, test, null, null, false ) );
            }
        }
    }
View Full Code Here

Examples of org.apache.maven.plugin.eclipse.EclipseSourceDir

            getLog().debug(
                            "Adding eclipse source dir: { " + resourceDir + ", " + thisOutput + ", true, " + test +
                                ", " + includePattern + ", " + excludePattern + " }." );

            directories.add( new EclipseSourceDir( resourceDir, thisOutput, true, test, includePattern, excludePattern,
                                                   resource.isFiltering() ) );
        }
    }
View Full Code Here

Examples of org.apache.maven.plugin.eclipse.EclipseSourceDir

        config.setBuildOutputDirectory( buildOutputDir );

        new File( basedir, maskedOutputDir ).mkdirs();

        EclipseSourceDir dir =
            new EclipseSourceDir( "src/main/resources", "target/classes", true, false, null, null, false );
        EclipseSourceDir testDir =
            new EclipseSourceDir( "src\\test\\resources", "target/classes/test-resources", true, true, null, null,
                                  false );

        EclipseSourceDir[] dirs = { dir, testDir };

        config.setSourceDirs( dirs );
View Full Code Here

Examples of org.apache.maven.plugin.eclipse.EclipseSourceDir

        // Map<String,List<EclipseSourceDir>>
        Map byOutputDir = new HashMap();

        for ( int j = 0; j < config.getSourceDirs().length; j++ )
        {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            // List<EclipseSourceDir>
            List byOutputDirs = (List) byOutputDir.get( dir.getOutput() );
            if ( byOutputDirs == null )
            {
                // ArrayList<EclipseSourceDir>
                byOutputDir.put( dir.getOutput() == null ? defaultOutput : dir.getOutput(), byOutputDirs =
                    new ArrayList() );
            }
            byOutputDirs.add( dir );
        }

        for ( int j = 0; j < config.getSourceDirs().length; j++ )
        {
            EclipseSourceDir dir = config.getSourceDirs()[j];

            log.debug( "Processing classpath for: " + dir.toString() + "; default output=" + defaultOutput );

            boolean isSpecial = false;

            // handle resource with nested output folders
            if ( dir.isResource() )
            {
                // Check if the output is a subdirectory of the default output,
                // and if the default output has any sources that copy there.

                if ( dir.getOutput() != null // resource output dir is set
                    && !dir.getOutput().equals( defaultOutput ) // output dir is not default target/classes
                    && dir.getOutput().startsWith( defaultOutput ) // ... but is nested
                    && byOutputDir.get( defaultOutput ) != null // ???
                    && !( (List) byOutputDir.get( defaultOutput ) ).isEmpty() // ???
                )
                {
                    // do not specify as source since the output will be nested. Instead, mark
                    // it as a todo, and handle it with a custom build.xml file later.

                    log.debug( "Marking as special to prevent output folder nesting: " + dir.getPath() + " (output="
                        + dir.getOutput() + ")" );

                    isSpecial = true;
                    specialSources.add( dir );
                }
            }

            writer.startElement( ELT_CLASSPATHENTRY );

            writer.addAttribute( ATTR_KIND, "src" ); //$NON-NLS-1$
            writer.addAttribute( ATTR_PATH, dir.getPath() );

            if ( !isSpecial && dir.getOutput() != null && !defaultOutput.equals( dir.getOutput() ) )
            {
                writer.addAttribute( ATTR_OUTPUT, dir.getOutput() );
            }

            String includes = dir.getIncludeAsString();
            if ( StringUtils.isNotEmpty( includes ) )
            {
                writer.addAttribute( ATTR_INCLUDING, includes );
            }

            String excludes = dir.getExcludeAsString();
            if ( StringUtils.isNotEmpty( excludes ) )
            {
                writer.addAttribute( ATTR_EXCLUDING, excludes );
            }

            writer.endElement();

        }

        // handle the special sources.
        if ( !specialSources.isEmpty() )
        {
            log.info( "Creating maven-eclipse.xml Ant file to handle resources" );

            try
            {
                Writer buildXmlWriter =
                    new OutputStreamWriter( new FileOutputStream( new File( config.getEclipseProjectDirectory(),
                                                                            "maven-eclipse.xml" ) ), "UTF-8" );
                PrettyPrintXMLWriter buildXmlPrinter = new PrettyPrintXMLWriter( buildXmlWriter );

                buildXmlPrinter.startElement( "project" );
                buildXmlPrinter.addAttribute( "default", "copy-resources" );

                buildXmlPrinter.startElement( "target" );
                buildXmlPrinter.addAttribute( NAME, "init" );
                // initialize filtering tokens here
                buildXmlPrinter.endElement();

                buildXmlPrinter.startElement( "target" );
                buildXmlPrinter.addAttribute( NAME, "copy-resources" );
                buildXmlPrinter.addAttribute( "depends", "init" );

                for ( Iterator it = specialSources.iterator(); it.hasNext(); )
                {
                    // TODO: merge source dirs on output path+filtering to reduce
                    // <copy> tags for speed.
                    EclipseSourceDir dir = (EclipseSourceDir) it.next();
                    buildXmlPrinter.startElement( "copy" );
                    buildXmlPrinter.addAttribute( "todir", dir.getOutput() );
                    buildXmlPrinter.addAttribute( "filtering", "" + dir.isFiltering() );

                    buildXmlPrinter.startElement( "fileset" );
                    buildXmlPrinter.addAttribute( "dir", dir.getPath() );
                    if ( dir.getIncludeAsString() != null )
                    {
                        buildXmlPrinter.addAttribute( "includes", dir.getIncludeAsString() );
                    }
                    if ( dir.getExcludeAsString() != null )
                    {
                        buildXmlPrinter.addAttribute( "excludes", dir.getExcludeAsString() );
                    }
                    buildXmlPrinter.endElement();

                    buildXmlPrinter.endElement();
                }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.