我正在使用 Java 中的 CDF(文件万事达卡使用)文件解析器,我正在使用此处找到的 API 。为了使用这个 API,你需要 jar 文件..
我不明白我是如何得到这个异常的,因为它应该在 getFile() 方法中处理..我用谷歌搜索了一下,我仍然不明白问题是什么..如果有人能指出我的正确那会很棒的方向。通过跟踪堆栈跟踪 .. 对我来说,这似乎是图书馆的问题。
在这里可以找到 api 的链接:http: //cdf.gsfc.nasa.gov/cdfjava_doc/cdf34/
尝试打开 CDF 文件时,运行程序后出现此错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: no cdfNativeLibrary in jav
a.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1860)
at java.lang.Runtime.loadLibrary0(Runtime.java:845)
at java.lang.System.loadLibrary(System.java:1084)
at gsfc.nssdc.cdf.CDFNativeLibrary.<clinit>(CDFNativeLibrary.java:47)
at gsfc.nssdc.cdf.CDF.open(CDF.java:426)
at gsfc.nssdc.cdf.CDF.open(CDF.java:385)
at FileModel.getFile(FileModel.java:21)
at FileModel.main(FileModel.java:9)
这是我的源代码:
import gsfc.nssdc.cdf.*;
import gsfc.nssdc.cdf.util.*;
public class FileModel
{
public static void main(String[] args)
{
getFile();
}
public static void getFile()
{
try
{
CDF cdf = CDF.open("outbound_MidCycle_File.xml");
//System.out.println(cdf.getID());
}
catch(CDFException e)
{
System.out.println("ERROR Cannot open CDF File");
}
catch(Exception e)
{
System.out.println("ERROR");
System.out.println(e.getMessage());
e.printStackTrace();
}
}
}
我运行的命令如下:
javac -cp '.:cdfjava.jar' FileModel.java
java -cp '.:cdfjava.jar' FileModel