Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用EclipseIDE运行API示例(已经有了工作区)_Java_Eclipse_Api_Ide_Workspace - Fatal编程技术网

Java 如何使用EclipseIDE运行API示例(已经有了工作区)

Java 如何使用EclipseIDE运行API示例(已经有了工作区),java,eclipse,api,ide,workspace,Java,Eclipse,Api,Ide,Workspace,我是Java新手,我不确定我的问题标题是否合适。请推荐更好的标题 我有一个Java API,它有许多可执行模块,可以执行与解析MS Outlook的.pst文件相关的各种操作。我的问题是,当我运行execute命令来执行API的一个模块的.class文件(java-classpath/opt/java/libs/JPST/lib/JPST.jar/opt/java/libs/JPST/examples/GetInboxMessages/bin/Example)时,我遇到了这个异常- 到目前为止…

我是Java新手,我不确定我的问题标题是否合适。请推荐更好的标题

我有一个Java API,它有许多可执行模块,可以执行与解析MS Outlook的
.pst
文件相关的各种操作。我的问题是,当我运行
execute
命令来执行API的一个模块的
.class
文件(
java-classpath/opt/java/libs/JPST/lib/JPST.jar/opt/java/libs/JPST/examples/GetInboxMessages/bin/Example
)时,我遇到了这个异常-

到目前为止……
您可以检查我在哪里得出结论,我正确地运行了
compile
execute
命令。但我还是得到了上面提到的例外

我问API的开发人员谁说我应该使用Eclipse或Netbeans IDE。他说

示例
API中的文件夹 文件夹结构是完整的Eclipse 工作空间

还说

编译和运行所有 例子

现在…
因此,我已经为Java安装了EclipseHelios。谁能告诉我使用IDE编译和运行所有示例(我认为示例文件夹中的模块)有多容易。我之前使用过Eclipse for PHP,但从未使用过Java

API的文件夹结构
我需要执行其中一个模块的
.class
文件(示例
目录
中有许多模块文件夹)。API的examples文件夹中有许多这样的模块。每个模块文件夹都包含一个
bin
文件夹(包含
.class
文件)和
src
文件夹(包含
.java
文件)。我需要执行一个这样的
.class
文件

有一个
lib
目录,其中包含一个
.jar
文件(需要由我的目标
.class
文件引用)。
lib
目录与
examples
目录处于同一级别

解决方案
我已经验证了Jonathan给出的解决方案是否有效(仅在未使用elipse案例的情况下验证)。为了更清楚地说明这一点,
classpath
需要在compile和execute命令中包含所有类位置。因此,如果您需要编译并执行一个带有依赖项的
Example.java
文件
Parent.jar
,请执行以下操作:-

编撰

javac -classpath /path/to/Parent.jar/file/Parent.jar:/path/to/Example.java/file/ Example.java
执行

java -classpath /path/to/Parent.jar/file/Parent.jar:/path/to/Example.class/file Example
注意分隔符-对于linux和
,应该是
适用于windows

谢谢,

SandePan听起来像是类路径问题

  • 右键单击eclipse中的项目

  • 转到构建路径>配置构建路径

  • 确保jar文件在libraries选项卡中被引用,如果没有,则添加它

当Eclipse启动时,它应该询问您要使用哪个工作区。选择examples文件夹,如果它确实是一个eclipse工作区,那么您应该会看到所有已经设置的项目(根据项目的大小和机器的速度,构建所有项目可能需要一些时间)。然后简单地找到您想要的类并运行它。如果一切都设置正确,它应该可以正常工作。如果没有,您可能需要返回开发人员以获取更多详细信息

但我认为运行这个类不需要Eclipse。查看您在问题开始时提供的stacktrace,它似乎无法运行,因为您没有正确设置类路径。尝试:

java -classpath /opt/Java/libs/JPST/lib/jpst.jar:/opt/Java/libs/JPST/examples/GetInboxMessages/bin Example
非常简单地解释一下:类路径列出了Java查找所需类的位置。您可以指定相对于类路径而不是作为文件路径运行的类。由于您试图在文件夹“/opt/Java/libs/JPST/examples/GetInboxMessages/bin”中运行的类,因此此文件夹必须位于类路径上(注意,我假设是基于unix的系统,如果您使用windows,请使用“;”来分隔条目,而不是“:”)。然后,只需指定相对于类路径(在本例中,类路径本身就是类名)自行运行的类


请注意这是一个非常基本的概述,如果您开始使用包(将显示在bin文件夹下面的文件夹),事情会变得更加复杂。这是使用Eclipse这样的程序的一个优点,因为它可以为您处理很多这方面的问题。

谢谢您的回答。我做到了。“Java构建路径”菜单中有4个选项卡。在Libraries菜单中,该
jar
文件存在。在“Order and Export”菜单中,
.jar
文件对应的复选框未选中。回答得很好!暂时忽略eclipse设置部分。您提出的让它在不使用eclipse的情况下运行的建议非常有效。我没有正确设置类路径。我假设只将
jpst.jar
添加到
classpath
中,因为它是一个依赖项,但正如您所指出的那样,以及
示例。类
文件的路径也需要添加到classpath中。高质量的回答。继续努力!
java -classpath /opt/Java/libs/JPST/lib/jpst.jar:/opt/Java/libs/JPST/examples/GetInboxMessages/bin Example