如何在处理中添加外部库

时间:2017-03-24 16:37:31

标签: java processing

当我尝试添加外部Java库时,我一直在使用处理并遇到问题。我按照在线提供的所有步骤进行操作,我必须访问lib文件夹(processing-3.3)并在其中添加我的库。不幸的是,我的方法不起作用。我面临的另一个问题是我不知道如何导入这个库。 This is the link to the library这是.jar文件link。有人可以帮忙吗?

此致

1 个答案:

答案 0 :(得分:5)

该库未包装为Processing库,取决于Apache Commons Math library。从理论上讲,你可以在Processing中使用它,但它很长,因为你必须:

  1. 下载commons-math3-3.6.1-bin.zip
  2. 解压缩,并将 commons-math3-3.6.1.jar 重命名为 commons_math.jar (处理对库名称中的某些字符进行限制)
  3. Documents / Processing / libraries 中创建一个名为 commons_math 的文件夹,然后在另一个名为 library 的文件夹中(这样您就拥有<强>文档/处理/库/ commons_math /文库
  4. Documents / Processing / libraries / commons_math / library
  5. 中复制 commons_math.jar
  6. 重新启动处理
  7. 此时,您应该可以在处理中执行此操作:草图&gt;导入库...&gt; (已提交)commons_math ,您将看到导入的所有软件包。您应该能够运行草图,证明您可以使用该库。

    接下来是trilateration库,它不是构建的,所以你需要安装/设置gradle,构建它,然后为trilateration库重复上面的过程。另一种方法是在草图中创建3个选项卡(尝试保持整洁),每个trilateration library classes一个,复制源代码,远程为每个类添加前缀public修饰符(如处理草图中的Processing IDE允许单个公共类)并删除包声明。

    最后,你应该可以在Processing ... phew!

    中使用这个库

    这很乏味,很难维护等等。

    我建议改用eclipse。如果您想节省创建Processing Project的时间,而不是手动复制Processing核心库,创建扩展PApplet等的主类,则可以安装Proclipsing。 它是一个eclipse插件,可以轻松创建Processing Java项目。

    一旦你在日食并且可以运行基本草图,你需要做的就是:

    1. 将Apache Commons Math jar添加到项目lib / user文件夹add commons to project
    2. 将库添加到构建路径add commons to build path
    3. 下载/解压缩三边测量库
    4. 从库文件夹的src / main / java中拖动eclipse项目src add trilateration source to project
    5. 顶部的com文件夹
    6. 从库的自述文件中复制示例代码:library sample code
    7. 请注意,某些代码为红色,因为未导入类。按CMD+Shift+O(在OSX上)/ Ctrl+Shift+O(在Linux / Windows上)。这将组织进口(并为您完成工作)。第一个建议就像一个魅力:organize imports
    8. 右键单击草图并选择Run As&gt; Java应用程序:Run As Java Application
    9. 哇哇!您现在可以运行示例代码。 它看起来并不令人印象深刻:没有显示,甚至没有显示在控制台中,但是嘿,它编译:D

      您可以轻松添加一些打印语句来查看结果:

      println(centroid);
      println("standardDeviation",standardDeviation);
      println("covarianceMatrix",covarianceMatrix);
      

      此时,您可以开始修改代码,按照您的意愿执行操作。 请记住,Processing中的大多数绘图函数都会使用float个参数,而且此库主要与double一起使用,因此请务必在绘制之前从double投射到float

      如果你已经使用Processing一段时间了,那么eclipse路线听起来很可行,并且IDE中有很多很好的功能可以加速开发。

      有更快的方法吗?可能是:看一下M2E,这样可以很容易地在日食中与Maven集成。 trilateration library has Maven support。{{3}}。理论上,您可以让Maven完成添加Apache Commons Math的繁琐繁琐工作,编译并将trilateration库添加到您的项目中。这将从Processing land进一步扩展到Java领域,但如果你有时间:它正在探索。您知道的Java越多,处理您的出价就越容易:)