xjc common problem

Problem: xjs -dtd <dtd file>

Exception in thread "main" java.lang.AssertionError: org.xml.sax.SAXParseException; systemId:jar:file:/D:/p/jdk1.8.0/lib/tools.jar!/com/sun/tools/internal/xjc/reader/dtd/bindinfo/bindingfile.xsd; l
eNumber: 38; columnNumber: 88; schema_reference: 無法讀取綱要文件 'xjc.xsd',因為不允許 'file' 存取。
 at com.sun.tools.internal.xjc.SchemaCache.newValidator(SchemaCache.java:65)
 at com.sun.tools.internal.xjc.reader.dtd.bindinfo.BindInfo.parse(BindInfo.java:300)
 at com.sun.tools.internal.xjc.reader.dtd.bindinfo.BindInfo.<init>(BindInfo.java:81)
 at com.sun.tools.internal.xjc.reader.dtd.TDTDReader.<init>(TDTDReader.java:145)
 at com.sun.tools.internal.xjc.reader.dtd.TDTDReader.parse(TDTDReader.java:110)
 at com.sun.tools.internal.xjc.ModelLoader.loadDTD(ModelLoader.java:283)
 at com.sun.tools.internal.xjc.ModelLoader.load(ModelLoader.java:141)
 at com.sun.tools.internal.xjc.ModelLoader.load(ModelLoader.java:104)
 at com.sun.tools.internal.xjc.Driver.run(Driver.java:318)
 at com.sun.tools.internal.xjc.Driver.run(Driver.java:185)
 at com.sun.tools.internal.xjc.Driver._main(Driver.java:108)
 at com.sun.tools.internal.xjc.Driver.access$000(Driver.java:65)
 at com.sun.tools.internal.xjc.Driver$1.run(Driver.java:88)
Caused by: org.xml.sax.SAXParseException; systemId: jar:file:/D:/p/jdk1.8.0/lib/tools.jar!/com/sun/tools/internal/xjc/reader/dtd/bindinfo/bindingfile.xsd; lineNumber: 38; columnNumber: 88; schema_re
rence: 無法讀取綱要文件 'xjc.xsd',因為不允許 'file' 存取。
 at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203)
 at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
 at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:4162)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaFatalError(XSDHandler.java:4141)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getSchemaDocument(XSDHandler.java:2168)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.resolveSchema(XSDHandler.java:2078)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.constructTrees(XSDHandler.java:1008)
 at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:620)
 at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:616)
 at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:574)
 at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:540)
 at com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:255)
 at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:631)
 at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:663)
 at com.sun.tools.internal.xjc.SchemaCache.newValidator(SchemaCache.java:62)

Solution: add jaxp.properteis with javax.xml.accessExternalSchema = all