def execute()

in tomee/apache-tomee/src/main/groovy/commands/SetupCommand.groovy [58:117]


    def execute() {
        String tomcatVersion = require('tomcat.version')
        System.setProperty('tomcat.version', tomcatVersion)

        String tomeeVersion = require('tomee.version')
        System.setProperty('tomee.version', tomeeVersion)

        String proxyHost = pom.settings.activeProxy?.host ?: ''
        String proxyPort = pom.settings.activeProxy?.port ?: ''
        if (proxyHost && proxyPort) {
            log.info("Setting proxy host=${proxyHost} and proxy port=${proxyPort}")
            new SetProxy(
                    proxyHost: proxyHost,
                    proxyPort: proxyPort as int,
                    proxyUser: pom.settings.activeProxy.username ?: '',
                    proxyPassword: pom.settings.activeProxy.password ?: '',
                    nonProxyHosts: pom.settings.activeProxy.nonProxyHosts ?: ''
            ).execute()
        }

        def workDir = require('tomee.workdir')
        def webapp = require('tomee.webapp')

        def dest = "${workDir}/apache-tomcat-${tomcatVersion}.zip" as String
        def catalinaHome = "${workDir}/apache-tomcat-${tomcatVersion}" as String
        System.setProperty('catalina.home', catalinaHome)
        System.setProperty('catalina.base', catalinaHome)

        log.info("extracting ${catalinaHome}")
        ant.unzip(src: dest, dest: "${workDir}")

        def localRepo = pom.settings.localRepository
        def warFile = "${localRepo}/org/apache/tomee/${webapp}/${tomeeVersion}/${webapp}-${tomeeVersion}-transformed.war"
        log.info("Deploying the tomee war ${warFile}")
        ant.unzip(src: "${warFile}",
                dest: "${workDir}/apache-tomcat-${tomcatVersion}/webapps/tomee")

        log.info("Installing to: ${catalinaHome}")


        Paths paths = new Paths(new File("${catalinaHome}/webapps/tomee" as String))
        Installer installer = new Installer(paths, properties, true)
        installer.installFull()

        // clean up duplicate jars since in TomEE it is useless
        // = gain of space ;)
        deleteWithRetry(file: paths.getOpenEJBTomcatLoaderJar())
        deleteWithRetry(file: paths.findTomEELibJar("openejb-javaagent-${tomeeVersion}.jar" as String))
        // we need the one without version

        deleteWithRetry(file: paths.findOpenEJBWebJar('tomee-loader'))
        deleteWithRetry(file: paths.findOpenEJBWebJar('swizzle-stream'))
        deleteWithRetry(file: paths.findTomEELibJar('jakarta.activation-api'))

        log.info('Assigning execute privileges to scripts in Tomcat bin directory')
        ant.chmod(dir: "${workDir}/apache-tomcat-${tomcatVersion}/bin", perm: 'u+x', includes: '**/*.sh')

        deleteWithRetry(dir: "${workDir}/apache-tomcat-${tomcatVersion}/webapps/examples")
        deleteWithRetry(dir: "${workDir}/apache-tomcat-${tomcatVersion}/webapps/tomee")
    }