2

如何让 Netbeans 添加javamail.providers到 META-INF 文件夹(我手动添加)而不进入 ant 构建文件中的杂草?

这有点奇怪,因为 manifest.mf 最终出现在生成的 jar 中的 META-INF 文件夹中(正确),但位于 META-INF 文件夹(我手动添加)之外:

thufir@dur:~/NetBeansProjects/gnumail-providers$ 
thufir@dur:~/NetBeansProjects/gnumail-providers$ ll META-INF/
total 12
drwxrwxr-x 2 thufir thufir 4096 Mar 21 04:02 ./
drwxr-xr-x 8 thufir thufir 4096 Mar 21 04:15 ../
-rw-rw-r-- 1 thufir thufir  868 Mar 21 04:02 javamail.providers
thufir@dur:~/NetBeansProjects/gnumail-providers$ 
thufir@dur:~/NetBeansProjects/gnumail-providers$ ll manifest.mf 
-rw-rw-r-- 1 thufir thufir 82 Mar 21 03:18 manifest.mf
thufir@dur:~/NetBeansProjects/gnumail-providers$ 

这是项目:

thufir@dur:~/NetBeansProjects/gnumail-providers$ 
thufir@dur:~/NetBeansProjects/gnumail-providers$ tree -L 2
.
├── build
│   ├── built-jar.properties
│   ├── classes
│   ├── empty
│   └── generated-sources
├── build.xml
├── dist
│   ├── gnu
│   ├── gnumail-providers.jar
│   ├── META-INF
│   ├── net
│   ├── providers
│   ├── treeutil
│   └── usenet.properties
├── javamail.providers
├── manifest.mf
├── META-INF
│   └── javamail.providers
├── nbproject
│   ├── build-impl.xml
│   ├── genfiles.properties
│   ├── private
│   ├── project.properties
│   └── project.xml
└── src
    ├── gnu
    ├── net
    ├── providers
    ├── treeutil
    └── usenet.properties

18 directories, 12 files
thufir@dur:~/NetBeansProjects/gnumail-providers$ 

这是 Netbeans 构建的结果 JAR:

thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ 
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ ll
total 228
drwxrwxr-x 3 thufir thufir   4096 Mar 21 04:15 ./
drwxr-xr-x 8 thufir thufir   4096 Mar 21 04:15 ../
-rw-rw-r-- 1 thufir thufir 213021 Mar 21 04:15 gnumail-providers.jar
drwxrwxr-x 2 thufir thufir   4096 Mar 21 04:15 lib/
-rw-rw-r-- 1 thufir thufir   1332 Mar 21 04:15 README.TXT
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ 
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ jar -xf gnumail-providers.jar 
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ 
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ ll
total 252
drwxrwxr-x 8 thufir thufir   4096 Mar 21 04:15 ./
drwxr-xr-x 8 thufir thufir   4096 Mar 21 04:15 ../
drwxrwxr-x 3 thufir thufir   4096 Mar 21 04:15 gnu/
-rw-rw-r-- 1 thufir thufir 213021 Mar 21 04:15 gnumail-providers.jar
drwxrwxr-x 2 thufir thufir   4096 Mar 21 04:15 lib/
drwxrwxr-x 2 thufir thufir   4096 Mar 21 04:15 META-INF/
drwxrwxr-x 3 thufir thufir   4096 Mar 21 04:15 net/
drwxrwxr-x 9 thufir thufir   4096 Mar 21 04:15 providers/
-rw-rw-r-- 1 thufir thufir   1332 Mar 21 04:15 README.TXT
drwxrwxr-x 2 thufir thufir   4096 Mar 21 04:15 treeutil/
-rw-rw-r-- 1 thufir thufir     70 Mar 21 04:15 usenet.properties
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ 
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ ll META-INF/
total 12
drwxrwxr-x 2 thufir thufir 4096 Mar 21 04:15 ./
drwxrwxr-x 8 thufir thufir 4096 Mar 21 04:15 ../
-rw-rw-r-- 1 thufir thufir  339 Mar 21 04:15 MANIFEST.MF
thufir@dur:~/NetBeansProjects/gnumail-providers/dist$ 

这是对GNU 打包建议的回应。

也可以看看:

http://article.gmane.org/gmane.comp.java.netbeans.user/176994

4

2 回答 2

6

右键单击项目/选择属性。在源节点中:单击添加文件夹。在构建节点,web节点,选择META-INF ==>点击ok

于 2013-09-01T12:33:15.933 回答
1

如果项目是 MAVEN WebApplication,只需在 Web Pages (/src) -> main 中创建结构 resources/META-INF

在此处输入图像描述

您将自动在项目中看到文件夹 Other Sources。

在此处输入图像描述

您也可以将其应用于其他类型的项目。

希望这有帮助

于 2016-11-03T12:34:18.977 回答