我正在尝试使用JavaScript将Java模型类转换到JSweet。模型类包含像@Column这样的JPA注释。一旦遇到import javax.persistence.Column,转移溢出就会失败。JPA注释在JavaScript中是不相关的,不应该被转移。在不改变Java代码的情况下,能做到这一点吗?
更普遍地说,是否有一种方法可以让JSweet忽略导入语句,例如,当导入的包的所有引用都在@Erased方法中时?
发布于 2017-09-16 09:53:34
通常,JSweet只是删除未知的注释,所以您的代码应该能够很好地转换。
首先要检查的是:您的类路径或Maven依赖项中有JPA jar吗?JSweet使用javac,它要求所有类型都在类路径中。我想@Column注释应该在那里:https://mvnrepository.com/artifact/javax.persistence/persistence-api/1.0.2
至于问题的第二部分,JSweet v2提供了一个API来优化代码的生成。见规格。在PrinterAdapter API中,当不需要导入时,可以重写needsImport方法以返回null。但是,我认为您不需要这样做,因为注释是自动删除的。
https://stackoverflow.com/questions/46246343
复制相似问题