使用Maven部署应用到TongWeb(东方通应用服务器)

发布于:2025-05-19 ⋅ 阅读:(20) ⋅ 点赞:(0)

使用Maven部署应用到TongWeb(东方通应用服务器)

TongWeb是东方通(TongTech)开发的一款国产Java应用服务器,与Tomcat类似但提供了更多企业级功能。以下是使用Maven将项目部署到TongWeb服务器的方法:

1. 使用TongWeb Maven插件 (推荐方式)

东方通提供了官方的Maven插件,这是最直接的部署方式。

基本配置

<build>
    <plugins>
        <plugin>
            <groupId>com.tongtech</groupId>
            <artifactId>tongweb-maven-plugin</artifactId>
            <version>7.0.0</version> <!-- 根据TongWeb版本调整 -->
            <configuration>
                <url>http://localhost:9060/manager/text</url>
                <username>admin</username>
                <password>tongweb</password>
                <path>/${project.build.finalName}</path>
                <update>true</update>
                <charset>UTF-8</charset>
            </configuration>
        </plugin>
    </plugins>
</build>

在settings.xml中安全配置凭证

<servers>
    <server>
        <id>tongweb-server</id>
        <username>admin</username>
        <password>{DES}加密后的密码</password>
    </server>
</servers>

常用命令

  • 部署应用:mvn tongweb:deploy
  • 重新部署:mvn tongweb:redeploy
  • 取消部署:mvn tongweb:undeploy
  • 启动应用:mvn tongweb:start
  • 停止应用:mvn tongweb:stop

2. 使用Cargo插件通用部署

如果官方插件不可用,可以使用Cargo进行通用部署:

<plugin>
    <groupId>org.codehaus.cargo</groupId>
    <artifactId>cargo-maven2-plugin</artifactId>
    <version>1.9.11</version>
    <configuration>
        <container>
            <containerId>tongweb7x</containerId>
            <type>remote</type>
        </container>
        <configuration>
            <type>runtime</type>
            <properties>
                <cargo.remote.uri>http://localhost:9060/manager/text</cargo.remote.uri>
                <cargo.remote.username>admin</cargo.remote.username>
                <cargo.remote.password>tongweb</cargo.remote.password>
                <cargo.tongweb.manager.context>manager</cargo.tongweb.manager.context>
            </properties>
        </configuration>
        <deployables>
            <deployable>
                <groupId>${project.groupId}</groupId>
                <artifactId>${project.artifactId}</artifactId>
                <type>war</type>
                <properties>
                    <context>/${project.build.finalName}</context>
                </properties>
            </deployable>
        </deployables>
    </configuration>
</plugin>

3. 使用Ant任务通过Maven部署

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>3.1.0</version>
    <dependencies>
        <dependency>
            <groupId>com.tongtech</groupId>
            <artifactId>tongweb-ant</artifactId>
            <version>7.0.0</version>
        </dependency>
    </dependencies>
    <executions>
        <execution>
            <phase>deploy</phase>
            <goals>
                <goal>run</goal>
            </goals>
            <configuration>
                <target>
                    <taskdef name="tongdeploy" 
                             classname="com.tongtech.ant.taskdefs.management.TongDeployTask"
                             classpathref="maven.plugin.classpath"/>
                    
                    <tongdeploy 
                        url="http://localhost:9060/manager/text"
                        username="admin"
                        password="tongweb"
                        path="/${project.build.finalName}"
                        war="file:${project.build.directory}/${project.build.finalName}.war"
                        update="true"/>
                </target>
            </configuration>
        </execution>
    </executions>
</plugin>

准备工作

在部署前,请确保:

  1. 启用管理控制台

    • 修改TONGWEB_HOME/webapps/manager/META-INF/context.xml,配置适当的IP访问限制
  2. 配置用户权限

    • 修改TONGWEB_HOME/conf/tomcat-users.xml,添加管理用户:
    <role rolename="manager-script"/>
    <user username="admin" password="tongweb" roles="manager-script"/>
    
  3. 开放管理端口

    • 默认管理端口为9060,确保防火墙已放行

多环境部署配置

<profiles>
    <profile>
        <id>dev</id>
        <properties>
            <tongweb.url>http://dev-server:9060/manager/text</tongweb.url>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <tongweb.url>http://prod-server:9060/manager/text</tongweb.url>
            <tongweb.path>/prod-${project.build.finalName}</tongweb.path>
        </properties>
    </profile>
</profiles>

使用命令指定环境:mvn tongweb:deploy -Pprod

常见问题解决

  1. 部署失败:权限不足

    • 确保用户具有manager-script角色
    • 检查tomcat-users.xml配置
  2. 连接被拒绝

    • 确认TongWeb服务已启动
    • 检查管理端口(默认9060)是否开放
  3. 中文乱码问题

    • 在插件配置中添加:<charset>UTF-8</charset>
    • 检查TongWeb服务器的文件编码设置
  4. 类加载问题

    • TongWeb可能有特殊的类加载机制,检查是否需要调整context.xml配置
  5. 内存不足

    • 调整Maven运行内存:export MAVEN_OPTS="-Xms512m -Xmx1024m"

注意事项

  1. TongWeb的路径规范可能与标准Tomcat有所不同,特别是上下文路径
  2. 企业版TongWeb可能有额外的安全限制,需要联系管理员获取部署权限
  3. 生产环境建议使用HTTPS协议进行部署操作
  4. 部署前建议备份原有应用

如需更详细的配置,请参考东方通官方文档或联系TongWeb技术支持。


网站公告

今日签到

点亮在社区的每一天
去签到