7

当我通过http://www.jsonschema2pojo.org/生成 POJO 时,我得到如下信息:

import javax.annotation.Generated;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

@Generated("org.jsonschema2pojo")
public class Name {
    //...
}

但是 Android Studio 无法识别javax.annotation.Generated,我必须删除两行代码

import javax.annotation.Generated;

@Generated("org.jsonschema2pojo")

形成每个 POJO,这是一种痛苦。有没有办法阻止http://www.jsonschema2pojo.org/添加该注释?

4

2 回答 2

7

如果您使用的是 Gradle,请转到“app/”文件夹中的 build.gradle 文件,并在依赖项 {...} 中添加:

compile 'org.glassfish:javax.annotation:10.0-b28'

然后重建项目。那应该解决它。

于 2016-05-08T17:28:01.297 回答
5

您可以随时要求 Gradle 在编译之前删除多余的行(自动为您):

task cleanupPojo {
    def trim = [
        '.*org.jsonschema2pojo.*',
        'import javax.annotation.Generated;'
    ]

    for(def text: trim) {
        ant.replaceregexp(match: text, replace: '', flags: 's', byline: true) {
            fileset(dir: 'src', includes: '**/*.java')
        }
    }
}

上面的脚本使用 Ant 的任务replaceregexptrim数组中删除所有出现的文本。

起首bas持续集成!:-)

于 2016-05-08T18:15:59.020 回答