gpt4 book ai didi

java - 使用 Apache Avro 生成的文件构建错误

转载 作者:太空宇宙 更新时间:2023-11-04 10:23:10 26 4
gpt4 key购买 nike

我使用 Gradle 使用 Apache Avro 构建一个简单的应用程序。以下是相关文件:

文件build.gradle

plugins {
id "com.commercehub.gradle.plugin.avro" version "0.9.0"
}

apply plugin: 'application'

group 'ahmed'
version '1.0-SNAPSHOT'
sourceCompatibility = 1.8

dependencies {
compile "org.apache.avro:avro:1.8.1"
testCompile group: 'junit', name: 'junit', version: '4.11'
}

repositories {
jcenter()
mavenCentral()
}

avro {
createSetters = false
fieldVisibility = "PRIVATE"
}

mainClassName = 'App'

文件src/main/avro/com/ahmed/pb/Employee.avsc

{"namespace": "com.ahmed.pb",
"type": "record", "name": "Employee",
"fields": [
{"name": "firstName", "type": "string"},
{"name": "lastName", "type": "string"},
{"name": "age", "type": "int"},
{"name": "phoneNumber", "type": "string"}
]
}

文件:src/main/java/App.java

// import avro.com.ahmed.pm.*;

public class App {
public String getGreeting() {
return "Hello world.";
}

public static void main(String[] args) {
System.out.println(new App().getGreeting());


Employee bob = Employee.newBuilder().setAge(35)
.setFirstName("Bob")
.setLastName("Jones")
.setPhoneNumber("555-555-1212")
.build();

assertEquals("Bob", bob.getFirstName());
}
}

构建错误消息:

$ ./gradlew  run
Starting a Gradle Daemon (subsequent builds will be faster)
:generateAvroProtocol NO-SOURCE
:generateAvroJava
:compileJava
/home/ahmed/temp/avrotut/src/main/java/App.java:5: error: package avro.com.ahmed.pm does not exist
import avro.com.ahmed.pm.*;
^
/home/ahmed/temp/avrotut/src/main/java/App.java:17: error: cannot find symbol
Employee bob = Employee.newBuilder().setAge(35)
^
symbol: class Employee
location: class App
/home/ahmed/temp/avrotut/src/main/java/App.java:17: error: cannot find symbol
Employee bob = Employee.newBuilder().setAge(35)
^
symbol: variable Employee
location: class App
Note: /home/ahmed/temp/avrotut/build/generated-main-avro-java/com/ahmed/pb/Employee.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
:compileJava FAILED

我很难包含 Java 生成的类。我需要在 build.gradle 文件中添加一些依赖项吗? App.java 中的导入行也不起作用。

最佳答案

问题是完整包名称的拼写错误。结束这个问题已解决。

关于java - 使用 Apache Avro 生成的文件构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50863186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com