版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010473656/article/details/78052818
项目结构:
其余配置均按照教程来的,但是tomcat启动之后没有跳转到起始页,页面显示:
这个用户名和密码肯定是不知道正确值了,点击“取消”,提示:
各种折腾之后发现,虽然tomcat能启动,但是mvn package的时候却报错,因为入口类在msso-web里,api会报找不到入口类,再看下api的pom,发现把下面的代码删除就好了:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
除了web的那个包含入口类的项目,其他项目都不能写这个插件的配置,看了下spring-boot-maven-plugin的作用,发现:这个插件允许将所在项目打包成jar包或者war包,而后就可以直接运行。关键就在于打成可执行的包,之前在api和core项目里因为配置的是:
<packaging>jar</packaging>
所以打jar包的时候会去找包含main方法的类,但是api中没有包含main方法的类,所以打包报错。
因为忽视了这个插件真正的含义,导致项目一直找不到提示登录的原因,停滞了3天,要深刻检讨自己!!!
下面是主类的代码:
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
@EnableAutoConfiguration
@Configuration
@ComponentScan("com.mljr.auth.controller")
@MapperScan("com.mljr.auth.dao.*")
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}