Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.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 maven使用pom创建jar_Java_Android_Maven - Fatal编程技术网

Java maven使用pom创建jar

Java maven使用pom创建jar,java,android,maven,Java,Android,Maven,我正在从事一个Android项目,我有一些核心代码(有一些依赖项),我想将其版本化并制作成一个库/工件(?),我可以将其应用到其他项目中。我正在使用Maven进行构建,我的编辑器是IntelliJ。我从未创建过.jar,但我想这就是我想要做的 在IntelliJ中,我转到了文件->项目结构->工件->+,但我迷路了。我不知道如何定义要在jar中包含哪些源目录和文件,我不确定是否需要在jar中包含其依赖项的实际jar?或者在pom.xml文件中定义这些依赖项,并将pom.xml文件包含在jar中

我正在从事一个Android项目,我有一些核心代码(有一些依赖项),我想将其版本化并制作成一个库/工件(?),我可以将其应用到其他项目中。我正在使用Maven进行构建,我的编辑器是IntelliJ。我从未创建过.jar,但我想这就是我想要做的

在IntelliJ中,我转到了文件->项目结构->工件->+,但我迷路了。我不知道如何定义要在jar中包含哪些源目录和文件,我不确定是否需要在jar中包含其依赖项的实际jar?或者在pom.xml文件中定义这些依赖项,并将pom.xml文件包含在jar中


如有任何澄清,将不胜感激

Maven项目的依赖项在其pom.xml文件中定义(基本上,通过文件->项目结构->工件,从这里更改依赖项就是您使用Intellij直观地做的事情)。Maven获取的源文件位于项目的src/main目录中。构建在默认情况下完成,不包括依赖项,因此如果您希望在最终的jar中,您必须在pom文件(插件)中指定此项:



jar将在project的目标文件夹中创建。

IntelliJ IDEA中的设置仅在使用IntelliJ IDEA编译器构建时创建jar。要让maven创建JAR并将其部署到maven存储库,您需要使用。创建具有依赖项的jar有一个简单的方法


还可以创建jar并处理更高级的用例。但是您可能想从汇编插件开始/

您能让Maven只查看src/main目录中的某些目录/文件吗?我想要的jar文件包含在一个Android应用程序中。我不想把整个Android应用程序放在jar中,只想保存某些文件。我想你是在维护一个Android项目的布局。为什么只放某些文件?你放在那个目录里的所有东西都是有用的。如果没有,它的位置不正确。配置可以修改为例如**/包含/*.java@XtremeBiker那么为android开发库的正确方法是将整个android应用程序打包到一个罐子中?这似乎不对,这是使用maven创建jar的正确方法,据我所知,在android中,您准备的是apk,而不是jar。。
  <plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>attached</goal>
        </goals>
      </execution>
    </executions>
    <configuration>
      <descriptorRefs>
        <descriptorRef>jar-with-dependencies</descriptorRef>
      </descriptorRefs>
    </configuration>
  </plugin>