2013-02-13 65 views
5

我想使用Clojure的HDF5 java library。不幸的是,包含Java依赖的通常方式(即通过Leiningen对Maven仓库的支持)不可用。这很可能是因为HDF5-Java库是一个由JNI包装的编译C++和Fortran代码集合。包含特定于平台的Java依赖项(未将我的头发着火)

我研究了Maven化的HDF5-Java的最新版本,但不明白特定于平台的版本是如何在那里处理的/认为这太痛苦了。假设我被HDF小组发布的特定于平台的罐子卡住了,是否有相对较好的方式来处理这些问题,同时继续主要生活在Leiningen的舒适世界中?

回答

1

我从来没有尝试过这个,但是看起来你应该能够通过将目录结构描述为here,在Maven中安装HDF5库打包成JAR文件,然后添加一个经常依赖该库在project.clj。 Leiningen应该处理检测操作系统和体系结构的肮脏工作,并在项目类路径中包含正确的部分。

更多的阅读,请上网:

http://nakkaya.com/2010/04/05/managing-native-dependencies-with-leiningen/

http://bially.posterous.com/using-jogl-in-your-clojure-project

Clojure, Lein, JavaFx, native deps

+0

慢慢通过这个工作,看看我能做出这种方法的工作。一个棘手的问题是,如果我只是将整个特定于平台的树放到本地分支中,我最终会得到一个40MB的jar - 对于clojars来说太大了。因此,我试图将平台特定的东西与跨平台的东西分离开来。希望我在梭壳上的th does不会吸引鲨鱼。 – Peter 2013-02-13 20:12:28

相关问题