Равенство для объектов скажет вам, являются ли два объекта одинаковыми.
var a = [];
var b = a;
a === b; // True, a and b refer to the same object
[] === []; // False, two separate objects
Вам нужно будет пропустить массивы, чтобы увидеть, имеют ли они одинаковые элементы.
Добавьте свой стартовый класс в свой pom:
<properties>
<!-- The main class to start by executing java -jar -->
<start-class>com.mycorp.starter.HelloWorldApplication</start-class>
</properties>
Я переименовал свой проект, и он все еще находил старый Application
класс в пути сборки. Я удалил его в папку «build», и все было в порядке.
Если вы используете 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
Для тех, кто использует Gradle (вместо Maven):
springBoot {
mainClass = "com.example.Main"
}
Если вы НЕ используете родительскую помпу весны-загрузчика-стартера, то из документации 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>
Для тех, кто использует Gradle (вместо Maven), ссылаясь на здесь :
Основной класс также может быть явно настроен с использованием свойства mainClassName задачи:
blockquote>bootJar { mainClassName = 'com.example.ExampleApplication' }
В качестве альтернативы, имя основного класса можно настроить по всему проекту, используя свойство mainClassName Spring Boot DSL:
blockquote>springBoot { mainClassName = 'com.example.ExampleApplication' }
Начиная с Spring Boot 1.5, вы можете завершить игнорировать строковый литерал с ошибкой в pom или build.gradle. Инструмент переупаковки (через плагин maven или gradle) выберет для вас аннотацию с @SpringBootApplication
. (Подробнее см. Эту проблему: https://github.com/spring-projects/spring-boot/issues/6496 )
Я попробовал следующий код в 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>