今天在java bean代码中加入swift的注释时,编译时提示了警告:
[javac] 警告: J:\facelog\db\sql2java\lib\swift-annotations-0.23.1.jar(com/facebook/swift/codec/ThriftStruct.class): 主版本 52 比 51 新, 此编译器支持最新的主版本。 [javac] 建议升级此编译器。
报这个错误的原因是编译jar包的编译器比当前编译器版本要高。
我用的编译器是java 1.7,而我使用了最新版本的swift-annotations jar包(0.23.1).通过查看jar包中的MANIFEST.MF
,显示是用java 1.8编译的,所以出现了上述的警告。
Manifest-Version: 1.0 Implementation-Title: swift-annotations Implementation-Version: swift-root-0.23.1 Archiver-Version: Plexus Archiver Built-By: tomdzk Specification-Vendor: Facebook, Inc. Specification-Title: swift-annotations Implementation-Vendor-Id: com.facebook.swift Git-Commit-Id: 308ba024495146dd0d47b72702d578eb89fecec2 Implementation-Vendor: Facebook, Inc. Build-Time: 2016-10-19T23:29:13-0700 Created-By: Apache Maven 3.3.3 Build-Jdk: 1.8.0_91 Specification-Version: 0.23.1
解决方法有两个: 1.升级java编译器到1.8 2.使用swift-annotations 0.14.x版本,(0.14版本是个分水岭,之后的版本都是java 1.8编译的,0.14之前则是1.7编译的)
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句