首页 > 解决方案 > POM 打包选项 jar 到战争变更错误

问题描述

嗨,我正在尝试将 pom.xml 中的打包选项从 jar 更改为 war。但是,当 everi 更改时,这会导致错误。所以我无法为我的 spring boot 应用程序创建 war 文件。

我的 pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>


    <groupId>com.domain</groupId>
    <artifactId>AsBuilt-MS</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>AsBuilt-MS</name>
    <description>Demo project for AsBuilt-MS Application</description>
    <packaging>jar</packaging>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <start-class>com.domain.AsBuiltMS.AsBuiltMsApplication</start-class>
    </properties>

    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-binding -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-binding</artifactId>
            <version>1.0.6</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</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-test</artifactId>
            <scope>test</scope>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <addResources>true</addResources>
                </configuration>
            </plugin>
        </plugins>
        <finalName>${project.artifactId}</finalName>
    </build>
</project>

错误信息

Errors occurred during the build.
Errors running builder 'Maven Project Builder' on project 'AsBuilt-MS'.
Could not calculate build plan: Plugin org.apache.maven.plugins:maven-war-plugin:3.2.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-war-plugin:jar:3.2.2
Plugin org.apache.maven.plugins:maven-war-plugin:3.2.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-war-plugin:jar:3.2.2
Could not calculate build plan: Plugin org.apache.maven.plugins:maven-war-plugin:3.2.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-war-plugin:jar:3.2.2
Plugin org.apache.maven.plugins:maven-war-plugin:3.2.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-war-plugin:jar:3.2.2

所以任何人都可以知道如何解决这个问题。

标签: javaspringeclipsemavenspring-boot

解决方案


由于您使用公司代理,因此您需要在 中配置两个代理条目settings.xml:一个用于 http,另一个用于 https 协议。

<proxy> 
<id>http-proxy</id> 
<active>true</active> 
<protocol>http</protocol> 
<username>proxyuser</username> 
<password>proxypass</password> 
<host>proxy.host.net</host> 
<port>80</port> 
<nonProxyHosts>local.net|some.host.com</nonProxyHosts> 
</proxy> 

<proxy> 
<id>https-proxy</id> 
<active>true</active> 
<protocol>https</protocol> 
<username>proxyuser</username> 
<password>proxypass</password> 
<host>proxy.host.net</host> 
<port>80</port> 
<nonProxyHosts>local.net|some.host.com</nonProxyHosts> 
</proxy> 

推荐阅读