我们正在处理java类,以便对其进行定制。在进行定制之前,我们只想检查现有java文件(MMC.jar)的编译/反编译过程。
我们使用jd-gui工具在MMC.jar下收集了所有java类文件。
因此,当我们编译现有的MMC.jar (没有自定义)时,它给出了附加的6个错误
./com/mmc/model/acknowledgement/package-info.java:7: error: illegal start of
type abstract interface package-info {}
^
./com/mmc/model/acknowledgement/package-info.java:7: error: = expected
abstract interface package-info {}
^
./com/mmc/model/customer/package-info.java:7: error: <identifier> expected
abstract interface package-info {}
^
./com/mmc/model/customer/package-info.java:7: error: illegal start of type
abstract interface package-info {}
^
./com/mmc/model/customer/package-info.java:7: error: = expected
abstract interface package-info {}
^
6 errors这是包-info java文件的内容。
package com.mmc.model.customer;
import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlSchema;
@XmlSchema(namespace="http://www.iflex.com/mmc/model/customer",
elementFormDefault=XmlNsForm.QUALIFIED)
abstract interface package-info {}问候阿里
发布于 2016-09-25 21:30:39
出现编译错误的原因是package-info不允许标识符。不能用-字符命名类、接口、变量等对象.有关更详细的命名规则,请参阅此答案。
但问题是,您使用包信息文件的方式是错误的。package-info.java文件的目的是在javadoc中添加对包的简要描述:这个包的用途、责任和内容。您不应该在这里声明任何类或接口。您只需在该文件中写入该文件所在的包名和包摘要javadoc即可。@sidgate评论是关于包信息文件责任的一个很好的回答。
https://stackoverflow.com/questions/39578312
复制相似问题