AutoValue: Moshi 扩展项目教程
auto-value-moshiAutoValue: Moshi Extension项目地址:https://gitcode.com/gh_mirrors/au/auto-value-moshi
1. 项目的目录结构及介绍
AutoValue: Moshi 扩展项目的目录结构如下:
auto-value-moshi/
├── README.md
├── build.gradle
├── settings.gradle
├── auto-value-moshi-runtime/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── ryanharter/
│ │ │ │ └── auto/
│ │ │ │ └── value/
│ │ │ │ └── moshi/
│ │ │ │ └── AutoValueMoshiAdapterFactory.java
│ │ │ └── resources/
│ │ └── test/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── ryanharter/
│ │ │ └── auto/
│ │ │ └── value/
│ │ │ └── moshi/
│ │ │ └── AutoValueMoshiAdapterFactoryTest.java
│ │ └── resources/
├── auto-value-moshi-factory/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── ryanharter/
│ │ │ │ └── auto/
│ │ │ │ └── value/
│ │ │ │ └── moshi/
│ │ │ │ └── AutoValueMoshiFactory.java
│ │ │ └── resources/
│ │ └── test/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── ryanharter/
│ │ │ └── auto/
│ │ │ └── value/
│ │ │ └── moshi/
│ │ │ └── AutoValueMoshiFactoryTest.java
│ │ └── resources/
└── samples/
├── build.gradle
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── example/
│ │ │ └── auto/
│ │ │ └── value/
│ │ │ └── moshi/
│ │ │ └── Example.java
│ │ └── resources/
│ └── test/
│ ├── java/
│ │ └── com/
│ │ └── example/
│ │ └── auto/
│ │ └── value/
│ │ └── moshi/
│ │ └── ExampleTest.java
│ └── resources/
目录结构介绍
auto-value-moshi-runtime/
: 包含运行时所需的类和资源文件。auto-value-moshi-factory/
: 包含用于生成JsonAdapterFactory
的类和资源文件。samples/
: 包含示例代码,展示了如何使用 AutoValue: Moshi 扩展。
2. 项目的启动文件介绍
项目的启动文件位于 samples/src/main/java/com/example/auto/value/moshi/Example.java
。这个文件是一个示例,展示了如何使用 AutoValue: Moshi 扩展来创建一个简单的 JsonAdapter
。
@JsonClass(generateAdapter = true, generator = "avm")
@AutoValue
public abstract class Example {
abstract String bar();
abstract String baz();
public static JsonAdapter<Example> jsonAdapter(Moshi moshi) {
return new AutoValue_ExampleMoshiJsonAdapter(moshi);
}
}
启动文件介绍
@JsonClass(generateAdapter = true, generator = "avm")
: 指示 Moshi 生成一个JsonAdapter
。@AutoValue
: 指示 AutoValue 生成一个实现类。public static JsonAdapter<Example> jsonAdapter(Moshi moshi)
: 提供一个静态方法来获取 `
auto-value-moshiAutoValue: Moshi Extension项目地址:https://gitcode.com/gh_mirrors/au/auto-value-moshi