使用jar文件中定义的主类/函数

时间:2017-10-30 10:46:36

标签: java netbeans-8

我正在尝试在Java NetBeans项目中创建以下设置:

  • 带有主类和主要功能的Jar。
  • 创建一个使用这个jar的项目,然后添加他们自己的细节(即jar中将缺少一些类,以及项目添加这些类的内容)。

jar本身运行正常(尽管最终将要删除的类仍然存在)。

我正在尝试创建将“使用”jar的项目。

我进行了设置并将Jar文件放在“Libraries”配置中(在Project Properties中)。

在此之后,项目结构变成这样:

> MyJavaApp
>> Source Packages
>>> <default package>
>> Librares
>>> The-Lib-From-The-Jar
>>>> <default package>
>>>>> MyJar.jar
>>>>>> mypackage
>>>>>>> AppViewer.class

MyJavaApp是使用Jar的项目的名称。 MyJar是Jar的名字。 AppViewer.class应该启动一切(这个类被声明为public)。

尝试执行项目时,出现此错误:

  

Project MyJavaApp没有主类设置。

然后我回到项目属性,特别是“Run”配置,并定义了以下内容:

  

主类:mypackage.AppViewer.class

执行此操作后,我在尝试执行项目时收到以下消息:

  

在MyJavaApp项目中找不到类mypackage.AppViewer.class。

我尝试了其他变体:

  

主类:mypackage.AppViewer

     

主类:AppViewer

具有相同的结果。

我正在寻找有关如何为上述设置进行正确配置的一些提示。

提前致谢。

1 个答案:

答案 0 :(得分:0)

它现在正在运作。

之前,我点击了dist文件夹(希望扩展它以便选择.jar文件),但是NetBeans不是展开文件夹,而是将整个文件夹放在项目树的Libraries分支下:

>> Libraries
>>> The-Path-To-Lib-From-The-Jar
>>>> <default package>
>>>>> MyJar.jar

我回到配置,而不是点击文件夹,我写了.jar文件的完整路径,项目结构如下所示:

>> Libraries
>>> MyJar.jar
>>>> mypackage
>>>>> AppViewer.class

请注意树上有2个级别。

执行此操作后,当我单击AppViewer.class时,我得到了方法的签名(以前不存在),所以我想前面的方法实际上并没有将.jar放在编译结构中。

感谢。