jsonschema2pojo生成的POJO包含Android Studio无法理解的注解

baubqpgj  于 11个月前  发布在  Android
关注(0)|答案(3)|浏览(129)

当我通过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/添加该注解?

4ioopgfo

4ioopgfo1#

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

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

字符串
那就重建工程,应该能修好

h5qlskok

h5qlskok2#

您可以随时要求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数组中删除所有出现的文本。
Chapeau bas持续集成!:-)

z9ju0rcb

z9ju0rcb3#

  • https://github.com/joelittlejohn/jsonschema2pojo/wiki/Getting-Started#using-jsonschema2pojo-within-your-java-project-embedded
  • Java项目:按照上面的文档,这个配置根本不包括生成的注解。
GenerationConfig config = new DefaultGenerationConfig() {

   @Override
   public boolean isIncludeGeneratedAnnotation() {
     return false;
   } }

字符串

相关问题