针对非Maven项目使用Jersey,Glassfish 4和Netbeans进行文件上传处理

时间:2017-07-19 03:18:48

标签: java netbeans jersey glassfish

我在使用Jersey,Glassfish 4和Netbeans实现文件上传处理方面遇到了麻烦。我知道有很多教程,但所有教程都使用maven项目。

就像我们知道在Netbeans Web应用程序项目中,在我们选择Glassfish作为服务器之后,我们可以自动使用所有JEE API,Netbeans将Glassfish中的JEE API添加到我们的库中(如下图所示)。我认为它仅用于编译而不包括在已部署的战争中。

enter image description here

我们甚至可以创建一个新的非Web Java应用程序,并通过向我们的库添加Java EE 7 API来使用JEE API,它只是用于编译的API,在运行时所有类都由服务器提供(如第二个)图片)。

enter image description here

现在,我想使用Jersey Multipart API来处理文件上传。 Glassfish已经在其modules文件夹中拥有所需的jar,如jersey-media-multipart。 (第3张图片),我知道它们是在运行时提供的,但我需要它们来编译我的项目。简单地将罐子添加到项目库不是一个正确的方法,因为它给了我很多奇怪的错误,我们知道我们不应该让Glassfish提供它们。

enter image description here

我需要像Jersey Multipart API这样的东西来编译项目,以便在运行时项目中使用Glassfish已经提供的所有类。就像Netbeans提供并运行良好的Java EE 7 API库一样。

1 个答案:

答案 0 :(得分:0)

嗯,这是解决方案......

如果您只添加了jersey-media-multipart,那么您将无法找到HttpReader错误,因此您需要添加glassfish模块中的所有球衣罐。

接下来,右键单击netbeans项目中的libraries文件夹,然后在编译选项卡中,取消选中package列中的所有jersey jar,以便在构建/运行项目时排除它们。

enter image description here

希望这有助于任何有类似问题的人。