博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自己写spring boot starter
阅读量:5777 次
发布时间:2019-06-18

本文共 3669 字,大约阅读时间需要 12 分钟。

自己写spring boot starter

学习了:《spring boot实战》汪云飞著 6.5.4节

pom.xml

4.0.0
com.stono
sboot161
1.0-SNAPSHOT
jar
sboot161
http://maven.apache.org
UTF-8
org.springframework.boot
spring-boot-autoconfigure
1.5.9.RELEASE
junit
junit
3.8.1
test

HelloService.java

package com.stono;public class HelloService {    private String msg;    public String sayHello(){        return "Hello"+msg;    }    public String getMsg() {        return msg;    }    public void setMsg(String msg) {        this.msg = msg;    }}
HelloServiceProperties.java
package com.stono;import org.springframework.boot.context.properties.ConfigurationProperties;@ConfigurationProperties(prefix = "hello")public class HelloServiceProperties {    private static final String MSG = "world";    private String msg = MSG;    public String getMsg() {        return msg;    }    public void setMsg(String msg) {        this.msg = msg;    }}
HelloServiceAutoConfiguration.java
package com.stono;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;import org.springframework.boot.context.properties.EnableConfigurationProperties;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;@Configuration@EnableConfigurationProperties(HelloServiceProperties.class)@ConditionalOnClass(HelloService.class)@ConditionalOnProperty(prefix = "hello", value = "enabled", matchIfMissing = true)public class HelloServiceAutoConfiguration {    @Autowired    private HelloServiceProperties helloServiceProperties;    @Bean    @ConditionalOnMissingBean(HelloService.class)    public HelloService helloService(){        HelloService helloService = new HelloService();        helloService.setMsg(helloServiceProperties.getMsg());        return helloService;    }}

编译完毕之后,使用IntelliJ 自带的Edit Configurations... 进行maven 编译设置,参数为 clean package

运行配置好的maven命令即可编译jar包;

如果在terminal中直接运行mvn clean package

会出现错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project sboot161: Compilation failure: Compilation failure:[ERROR] 不再支持源选项 1.5。请使用 1.6 或更高版本。[ERROR] 不再支持目标选项 1.5。请使用 1.6 或更高版本。[ERROR] -> [Help 1][ERROR][ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.[ERROR] Re-run Maven using the -X switch to enable full debug logging.[ERROR][ERROR] For more information about the errors and possible solutions, please read the following articles:[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

学习了:http://blog.csdn.net/sosous/article/details/78312867

进行pom.xml文件修改:

UTF-8
1.8
1.8

就可以正常运行 mvn clean package了;

运行之后,需要使用mvn install命令将jar包安装本地库:

mvn install:install-file -Dfile=D:\Java\IdeaProjects\sboot161\target\sboot161-1.0-SNAPSHOT.jar -DgroupId=com.stono -DartifactId=sboot161 -Dversion=1.0-SNAPSHOT -Dpackaging=jar

然后在其他项目中就可以添加该pom依赖,在程序中自动引入该HelloService了;

 

你可能感兴趣的文章
商教助手!解析夏普液晶高清宽屏投影机系列
查看>>
云南去年有望实现151万贫困人口净脱贫
查看>>
Java架构师面试题系列整理(大全)
查看>>
延伸产业链 中国产粮大省向“精深”问发展
查看>>
消费贷用户70%月收入低于5000元 80、90后是主要人群
查看>>
2018年内蒙古外贸首次突破1000亿元
查看>>
CTOR有助于BCH石墨烯技术更上一层楼
查看>>
被遗忘的CSS
查看>>
Webpack中的sourcemap以及如何在生产和开发环境中合理的设置sourcemap的类型
查看>>
做完小程序项目、老板给我加了6k薪资~
查看>>
java工程师linux命令,这篇文章就够了
查看>>
关于React生命周期的学习
查看>>
webpack雪碧图生成
查看>>
搭建智能合约开发环境Remix IDE及使用
查看>>
Spring Cloud构建微服务架构—服务消费基础
查看>>
RAC实践采坑指北
查看>>
runtime运行时 isa指针 SEL方法选择器 IMP函数指针 Method方法 runtime消息机制 runtime的使用...
查看>>
LeetCode36.有效的数独 JavaScript
查看>>
Scrapy基本用法
查看>>
PAT A1030 动态规划
查看>>