说起来,其实我自己也感觉这个要求挺奇怪的,Java操作CAD,好吧,目前比较完善的类库有一个是jdwglib,但是我没找到,而且公司刚好有OpenDesign的账号,因此,需要使用Teigha来进行操作,这期间遇到了相当的问题,我在这里把他们进行一些总结。
0x01 首先要有一个Teigha
从openDesign的首页就可以看到一个FreeTrial的链接,似乎是试用版,我把它down了下来(这个是要登录才可以下载的),要选择Java版,我的系统是64位的,估计多数新的pc都是64位,因此应该使用amd64版本。
接下来就是使用了,通过system.loadLibrary加载本地的动态库,然后就可以像使用其他Java类库一样使用这些关于CAD的api了。
System.loadLibrary("TeighaJavaCore");
System.loadLibrary("TeighaJavaDwg");
然后呢?这就是第一个问题了,我们会得到一个本地库的link异常,Windows下会告诉你找不到依赖库,mac下的提示信息会说找不到一个tx文件。这是由于下载的动态库不完整的原因,有一个位置是只有登录之后才可以找到的,在这个位置可以选择各种版本以及对应的操作系统,Java版需要kernel和drawing的支持,这一点是在我们下载之前的那个页面,有