• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

keycloak集成微信登陆~解决国内微信集成的问题

互联网 diligentman 1周前 (01-13) 10次浏览

之前看了国内写的微信集成keycloak的文章,然后拿来就用了,但我的是jboss部署的keycloak,然后使用他的包之后,会出现类无法找到的问题,之后找了很多资料,多数都是国外的,在今天终于找到了解决这个问题的方法,首先你用shade,assemble去打包,把缺少的包打进来,这种方案是不行的,因为人家部署的项目里已经有你这些keyclock包了,所以会出现不同classload装载相同类的情况,结果就是出现not a subtype的问题。

总结

参考:https://stackoverflow.com/questions/57778240/noclassdeffounderror-in-a-provider-jar-when-using-a-class-from-org-keycloak-auth

一 需要向MANIFEST.MF里注入依赖包

 <plugin>  <groupId>org.apache.maven.plugins</groupId>  <artifactId>maven-jar-plugin</artifactId>  <configuration>   <archive>    <manifestEntries>     <Dependencies>org.keycloak.keycloak-services</Dependencies>    </manifestEntries>   </archive>  </configuration> </plugin>

生成的META-INF/MANIFEST.MF
keycloak集成微信登陆~解决国内微信集成的问题

二 版本包和版本

你的weixin里使用的keycloak应该和服务端的版本相同,因为你的包也是要被部署到人家的服务器的,我和服务器用的是11.0.2

 <dependencies>  <dependency>   <groupId>org.keycloak</groupId>   <artifactId>keycloak-core</artifactId>   <scope>provided</scope>   <version>${keycloak.version}</version>  </dependency>  <dependency>   <groupId>org.keycloak</groupId>   <artifactId>keycloak-server-spi</artifactId>   <scope>provided</scope>   <version>${keycloak.version}</version>  </dependency>  <dependency>   <groupId>org.keycloak</gr.........
{{o.name}}


{{m.name}}


喜欢 (0)