Избегайте зависимости maven для запуска [duplicate]

Равенство для объектов скажет вам, являются ли два объекта одинаковыми.

var a = [];
var b = a;
a === b;    // True, a and b refer to the same object
[] === [];  // False, two separate objects

Вам нужно будет пропустить массивы, чтобы увидеть, имеют ли они одинаковые элементы.

См.: Как проверить, равны ли два массива с JavaScript?

140
задан Thilo 22 April 2014 в 11:31
поделиться

8 ответов

Добавьте свой стартовый класс в свой pom:

<properties>
    <!-- The main class to start by executing java -jar -->
    <start-class>com.mycorp.starter.HelloWorldApplication</start-class>
</properties>
220
ответ дан ludo_rj 24 August 2018 в 08:28
поделиться

Я переименовал свой проект, и он все еще находил старый Application класс в пути сборки. Я удалил его в папку «build», и все было в порядке.

1
ответ дан Anthony De Smet 24 August 2018 в 08:28
поделиться

Если вы используете Spring-boot-starter-parent в своем pom, вы просто добавляете следующее к своему pom:

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

Затем сделайте свой mvn-пакет.

См. эту страницу с документами Spring .

. Очень важным аспектом здесь является упомянуть, что структура каталогов должна быть src / main / java / nameofyourpackage

10
ответ дан Community 24 August 2018 в 08:28
поделиться

Для тех, кто использует Gradle (вместо Maven):

springBoot {
    mainClass = "com.example.Main"
}
116
ответ дан Marcelo C. 24 August 2018 в 08:28
поделиться

Если вы НЕ используете родительскую помпу весны-загрузчика-стартера, то из документации Spring :

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>1.1.3.RELEASE</version>
    <configuration>
        <mainClass>my.package.MyStartClass</mainClass>
        <layout>ZIP</layout>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>
60
ответ дан Renaud 24 August 2018 в 08:28
поделиться

Для тех, кто использует Gradle (вместо Maven), ссылаясь на здесь :

Основной класс также может быть явно настроен с использованием свойства mainClassName задачи:

bootJar {
    mainClassName = 'com.example.ExampleApplication'
}

В качестве альтернативы, имя основного класса можно настроить по всему проекту, используя свойство mainClassName Spring Boot DSL:

springBoot {
    mainClassName = 'com.example.ExampleApplication'
}
4
ответ дан Shane Lu 24 August 2018 в 08:28
поделиться

Начиная с Spring Boot 1.5, вы можете завершить игнорировать строковый литерал с ошибкой в ​​pom или build.gradle. Инструмент переупаковки (через плагин maven или gradle) выберет для вас аннотацию с @SpringBootApplication. (Подробнее см. Эту проблему: https://github.com/spring-projects/spring-boot/issues/6496 )

1
ответ дан Thilo 24 August 2018 в 08:28
поделиться

Я попробовал следующий код в pom.xml, и он работал для меня

<build>
<plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
            <mainClass>myPackage.HelloWorld</mainClass> 
        </configuration>
    </plugin>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
            <fork>true</fork>
            <executable>D:\jdk1.8\bin\javaw.exe</executable>
        </configuration>
    </plugin>
</plugins>

2
ответ дан TRIDIB BOSE 24 August 2018 в 08:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: