2016-10-19 2 views
0

On dirait que grpc Les prérequis sont java 7 ou supérieur.La prise en charge de GRPC par java 6

J'ai une exception lors de l'installation de grpc. java.lang.UnsupportedClassVersionError: com/google/protobuf/gradle/ProtobufPlugin: version majeure non prise en charge 51.0

J'ai java 6 en cours d'exécution localement. Pourrait être un moyen grpc en cours d'exécution avec Java 6?

+0

http://www.grpc.io/docs/quickstart/java.html La condition préalable est «Java7», ce qui signifie «non **». – gravity

Répondre

0

Gradle no longer supports running under JDK 6. Cela dit, gRPC utilise actuellement une ancienne version de Gradle qui fonctionne sur JDK 6. Mais nous utilisons également un plugin Protobuf qui ne fonctionne pas avec JDK 6 (ce qui est l'erreur que vous voyez). Puisque nous nous attendons à passer rapidement à Gradle 3, il n'y a pas grand intérêt à régler le problème de compilation.

Ainsi, alors que vous devez compiler JDK 7, la sortie de la compilation prend en charge JRE 6. Regardez the artifacts on Maven Central; ils utilisent l'ancienne version de bytecode pour la compatibilité. Java 6 est très vieux et a des problèmes avec des choses comme TLS. La principale raison pour laquelle Java 6 est pris en charge est de faciliter l'utilisation d'Android, mais même Android a certaines fonctionnalités de Java 7. Je recommande fortement de passer à un environnement d'exécution Java plus récent.

+0

merci! Je vais mettre à jour à Java 6+. –