生成的协议文件创建了一个错误的目标源
Generated protoc file creates a target source with error
我尝试制作一个连接到数据库并获取信息并通过 grpc 在桌面应用程序中输出它们的项目。
但是,当我编译它时,我在目标文件中得到 "Error:(20,18) java: cannot find symbol" (它是由 protoc.target 自动生成的)。
我不明白这个问题。我试图更改 mvn 的编译器,更改 protoc 上的版本,设置不同的 JDK,一切都变得更糟了。
我的项目可以在这里查看:https://github.com/Diana-Ioana/grpc
我的数据库和生成的崩溃目标文件的错误是:https://imgur.com/a/T6taLXF
我现在不知道该怎么办。如有帮助,将不胜感激!
看起来 "cannot find symbol" 指的是 javax.annotation.Generated
。在这种情况下,您可以添加对注释的依赖-api:
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>annotations-api</artifactId>
<version>6.0.53</version>
<!-- Generated has @Retention(SOURCE), so not needed at runtime -->
<scope>provided</scope>
</dependency>
最初这个答案建议 javax.annotation-api,但该库已获得 CDDL 许可,因此 gRPC changed its recommendation。
<!-- The old suggestion. Uses CDDL-licensed library -->
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.2</version>
</dependency>
我尝试制作一个连接到数据库并获取信息并通过 grpc 在桌面应用程序中输出它们的项目。 但是,当我编译它时,我在目标文件中得到 "Error:(20,18) java: cannot find symbol" (它是由 protoc.target 自动生成的)。 我不明白这个问题。我试图更改 mvn 的编译器,更改 protoc 上的版本,设置不同的 JDK,一切都变得更糟了。
我的项目可以在这里查看:https://github.com/Diana-Ioana/grpc 我的数据库和生成的崩溃目标文件的错误是:https://imgur.com/a/T6taLXF
我现在不知道该怎么办。如有帮助,将不胜感激!
看起来 "cannot find symbol" 指的是 javax.annotation.Generated
。在这种情况下,您可以添加对注释的依赖-api:
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>annotations-api</artifactId>
<version>6.0.53</version>
<!-- Generated has @Retention(SOURCE), so not needed at runtime -->
<scope>provided</scope>
</dependency>
最初这个答案建议 javax.annotation-api,但该库已获得 CDDL 许可,因此 gRPC changed its recommendation。
<!-- The old suggestion. Uses CDDL-licensed library -->
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.2</version>
</dependency>