我已经阅读了推荐使用go-xsd的generate Go structs from XSD帖子,但是我已经下载了go-xsd并安装了xsd-makepkg而且我无法生成我的结构.
我在做什么?
xsd-makepkg -basepath =“/ Users / XSD_Access /” – goinst = false
-xsd-makepkg:它是从go-xsd-pkg开始创建的二进制文件
-basepath:包含我想要转换为struct的Structure XSD的路由.
-goinst:我没有安装go-buildrun,我认为它不是必要的,因为这个原因是ser false
命令的结果是什么?
包含所有关注者XML包装器的其他文件夹的文件夹($GOPATH /usr/Users / XSD_Access /)
> docbook.org
> docs.oasis-open.org
> kbcafe.com
> khronos.org
> schemas.opengis.net
> thearchitect.co.uk
>用户
> www.w3.org
结构XSD
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="Request" type="Request"/> <xs:complexType name="Request"> <xs:annotation> <xs:documentation xml:lang="sp"><![CDATA[ Comment xxxxx ]]></xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="idOne" type="xs:string" minOccurs="0" maxOccurs="1"> <xs:annotation> <xs:documentation xml:lang="sp"><![CDATA[Comment xxxxx ]]></xs:documentation> </xs:annotation> </xs:element> <xs:element name="idTwo" type="xs:string" minOccurs="0" maxOccurs="1"> <xs:annotation> <xs:documentation xml:lang="sp"><![CDATA[Comment xxxxxx ]]></xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> </xs:schema>
任何人都可以告诉我我做错了什么或我错过了哪一步它不让我从我的Structure XSD创建一个结构?
提前致谢
起初我也对此感到困惑,因为文档提到了从本地文件构建,但只有在指定的文件已经下载时才有效.
-basepath =“”确定将这些文件下载到的位置,以及生成的.go文件的放置位置
你要找的是-uri =“”的论点. -uri =“”确定要下载和处理的文件.该参数采用以空格分隔的uris列表,http://是可选的.
使其与本地文件一起使用的快速而肮脏的方法是从本地Apache实例提供文件,然后将程序指向localhost.当然,假设您正好运行Web服务器.
例如:
mv *.xsd /var/www/html cd /var/www/html for xsd in *; do xsd-makepkg -uri="127.0.0.1/$xsd"; done