然后我们再次改pom.xml文件,把spring boot和jdk的版本也升一下
<properties> ... <java.version>1.8</java.version> <spring-boot.version>2.2.1.RELEASE</spring-boot.version> <dubbo.version>2.8.4a</dubbo.version> ... </properties>这样,一个可以在2.8.4a版本下使用的dubbo starter就改造完成了。
4、用起来虽然改完了,但怎么用却还是一个问题,第一种方法是直接用mvn package生成dubbo-spring-boot-starter-2.8.4a.jar,然后copy到项目中去。但这种方法在现在的软件开发中已经不常用了,大部分用的方法是发布到maven的nexus私服。首先要把pom.xml改一下
<distributionManagement> <snapshotRepository> <id>snapshots</id> <url>私服ip:port/nexus/content/repositories/snapshots</url> </snapshotRepository> <repository> <id>releases</id> <url>私服ip:port/nexus/content/repositories/releases</url> </repository> </distributionManagement>另外本地maven软件的setting.xml文件也要配置一下:
<servers> <server> <id>releases</id> <username>账号</username> <password>密码</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers>然后执行 mvn deploy就能发布到私服上去了。如果deploy有报这个错
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-gpg-plugin:1.6:sign (sign-artifacts) on project dubbo-spring-boot-starter: Unable to execute gpg command: Error while executing process. Cannot run program "gpg.exe": CreateProcess error=2, 系统找不到指定的文件。 -> [Help 1]是因为deploy的时候调用了gpg的签名,我们私服不见得需要,我直接把它从pom.xml里面去掉了
<plugin> <artifactId>maven-gpg-plugin</artifactId> <version>${maven-gpg-plugin.version}</version> <configuration> <skip>false</skip> </configuration> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin>就是这段,去掉后,发布成功就能够直接在项目的pom.xml中引用了。
修改后的starter源代码