springboot プロジェクトは war にパッケージ化され、Tomcat にデプロイされてカスタム ポートを実装します。

パック

pom.xml

パッケージの変更

瓶を戦争に変える

<!--    <packaging>jar</packaging>-->
    <packaging>war</packaging>

依存関係を追加する

        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <!--<scope>provided</scope>-->
            <!-- 如果不注释,你会发现main线程运行报404错误,必须使用 spring-boot:run这个命令运行才行。所以我们注释掉-->
        </dependency>
        <!--添加servlet-api的依赖,用来打war包  -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>

依存関係を変更する

1.意志

            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

に変更

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

2.意志

        <finalName>phoneshow</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

に変更

        <finalName>phoneshow</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <!--配置springboot入口类-->
                <configuration>
                    <fork>true</fork>
                    <jvmArguments>Dfile.encoding=UTF-8</jvmArguments>
                    <!--配置入口类的标签名-->
                    <mainClass>com.phoneback</mainClass>
                </configuration>
            </plugin>
        </plugins>
    </build>

起動クラス

意思

public class DemocopyApplication{
    
    

    public static void main(String[] args) {
    
    
        SpringApplication.run(DemocopyApplication.class, args);
    }
}

着替える

public class DemocopyApplication extends SpringBootServletInitializer{
    
    

    public static void main(String[] args) {
    
    
        SpringApplication.run(DemocopyApplication.class, args);
    }
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder){
    
    
        return builder.sources(DemocopyApplication.class);
    }
}

配備

プロジェクトをデプロイする

tomcat の webapps フォルダに入れます
ここに画像の説明を挿入
bin 内の startup.bat をダブルクリックして実行
アクセス方法:
http://localhost:8080/プロジェクト名
ここに画像の説明を挿入

複数のプロジェクトを異なるポートにデプロイする

conf フォルダの server.xml ファイルを変更します。
元のコメント コンテンツを削除すると、次のように表示されます。
ここに画像の説明を挿入

コピーを作成し、サービスとエンジンの名前を別の名前 (同じにする必要があります) に変更し、ホストの appbase の新しい名前を変更し、ポートを必要なポート番号に変更します。
ここに画像の説明を挿入

上記のように、次のプロジェクト名を追加せずにアクセスする場合:

<Context path=""  docBase="phoneshow" reloadable="true" />

docBase はプロジェクト名です。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_42571665/article/details/127363008