欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用maven打包生成doc文檔和打包源碼

 更新時間:2021年07月29日 10:28:35   作者:my_interface  
這篇文章主要介紹了使用maven打包生成doc文檔和打包源碼的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

maven打包生成doc文檔和打包源碼

在pom.xml中加入如下插件

<build>
        <plugins>
            <!-- 文檔 插件 -->
            <plugin>
                <groupId>or下g.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.7</version>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <additionalparam>-Xdoclint:none</additionalparam>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <!-- 打包源碼插件 -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
            <version>2.1.2</version>
            <configuration>
                <attach>true</attach>
            </configuration>
            <executions>
                <execution>
                    <phase>compile</phase>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
            </plugin>
 
        </plugins>
    </build>

如上的此種打包方式打包成如下這種分為3個包,源碼包,文檔包,和不包含源碼的war包

如果想把源碼和編譯后的打包到一個war里面,

將打包源碼插件改為 如下插件

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.3</version>
                <executions>
                    <execution>
                        <id>copy-resources</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.outputDirectory}</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/main/java</directory>
                                    <includes>
                                        <include>**/*.java</include>
                                    </includes>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

插件maven-resources-plugin默認處理資源和測試資源,把資源加入到文件夾${project.build.outputDirectory},這個引用表示項目的輸出文件夾。

一般是項目的WEB-INF\classes文件夾。等到打包的時候,就把這個文件夾里面的內(nèi)容打包成jar文件。所以想要把源代碼打包到jar文件里面

就需要把源代碼當作資源文件添加到文件夾${project.build.outputDirectory}。

打包完成只會生成一個war包,

而查看war包中包含源碼的方式如下

maven 打包報錯 生成javadoc 時有問題

項目是基于maven管理的,一直打包都好著呢,

今天打包莫名奇妙的報了一大堆錯誤

[ERROR] java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl cannot be cast to com.sun.javadoc.AnnotationTypeDoc
[ERROR] at com.sun.tools.javadoc.AnnotationDescImpl.annotationType(AnnotationDescImpl.java:46)
[ERROR] at com.sun.tools.doclets.internal.toolkit.util.Util.isDeprecated(Util.java:811)
[ERROR] at com.sun.tools.doclets.formats.html.TagletWriterImpl.deprecatedTagOutput(TagletWriterImpl.java:85)
[ERROR] at com.sun.tools.doclets.internal.toolkit.taglets.DeprecatedTaglet.getTagletOutput(DeprecatedTaglet.java:40)
[ERROR] at com.sun.tools.doclets.formats.html.MethodWriterImpl.writeDeprecated(MethodWriterImpl.java:166)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.MethodBuilder.buildDeprecationInfo(MethodBuilder.java:183)
[ERROR] at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.MethodBuilder.invokeMethod(MethodBuilder.java:109)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractBuilder.build(AbstractBuilder.java:90)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractMemberBuilder.build(AbstractMemberBuilder.java:56)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.MethodBuilder.buildMethodDoc(MethodBuilder.java:150)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.MethodBuilder.invokeMethod(MethodBuilder.java:109)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractBuilder.build(AbstractBuilder.java:90)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractMemberBuilder.build(AbstractMemberBuilder.java:56)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.buildMethodDetails(ClassBuilder.java:322)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.invokeMethod(ClassBuilder.java:101)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractBuilder.build(AbstractBuilder.java:90)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.buildClassDoc(ClassBuilder.java:124)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.invokeMethod(ClassBuilder.java:101)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.AbstractBuilder.build(AbstractBuilder.java:90)
[ERROR] at com.sun.tools.doclets.internal.toolkit.builders.ClassBuilder.build(ClassBuilder.java:108)
[ERROR] at com.sun.tools.doclets.formats.html.HtmlDoclet.generateClassFiles(HtmlDoclet.java:155)
[ERROR] at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.generateClassFiles(AbstractDoclet.java:164)
[ERROR] at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:106)
[ERROR] at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
[ERROR] at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
[ERROR] at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[ERROR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[ERROR] at java.lang.reflect.Method.invoke(Method.java:597)
[ERROR] at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:269)
[ERROR] at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:143)
[ERROR] at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
[ERROR] at com.sun.tools.javadoc.Start.begin(Start.java:128)
[ERROR] at com.sun.tools.javadoc.Main.execute(Main.java:41)
[ERROR] at com.sun.tools.javadoc.Main.main(Main.java:31)

搞了半天沒研究出來,最后試了多個命令,如 :pakage 、test 等命令都不報錯,只有在用install 的時候報錯。 仔細看日志,最后懷疑是 在生成 javadoc 的時候報錯,又試了install -D maven.javadoc.skip=true 命令跳過 生成javadoc 部分,果然就不報錯了。

仔細研究了下,原來是maven javadoc插件 版本的問題,導致生成這個的時候報錯。

在pom 中增加

<build>
<finalName>biz-statistics</finalName>
        <resources>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
<plugins>
 <plugin>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>2.9.1</version>
          <executions>
            <execution>
              <id>attach-javadocs</id>
              <phase>install</phase>
              <goals>
                <goal>jar</goal>
              </goals>
              <configuration>
                <encoding>UTF-8</encoding>
              </configuration>
            </execution>
          </executions>
          <configuration>
            <encoding>UTF-8</encoding>
          </configuration>
        </plugin>
        </plugins>
</build>

設置版本號即可。以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Java 語言守護線程 Daemon Thread使用示例詳解

    Java 語言守護線程 Daemon Thread使用示例詳解

    這篇文章主要為大家介紹了Java 語言守護線程 Daemon Thread使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • 利用java監(jiān)聽器實現(xiàn)在線人數(shù)統(tǒng)計

    利用java監(jiān)聽器實現(xiàn)在線人數(shù)統(tǒng)計

    過去使用ASP和ASP.NET兩種編程的時候,都寫過在線人數(shù)統(tǒng)計能,實現(xiàn)功能挺簡單的!今天使用java來實現(xiàn)在線人數(shù)統(tǒng)計有點另類,是通過Java監(jiān)聽器實現(xiàn)的,需要的朋友可以參考下
    2015-09-09
  • JDK8的lambda方式List轉Map的操作方法

    JDK8的lambda方式List轉Map的操作方法

    account是一個返回本身的lambda表達式,其實還可以使用Function接口中的一個默認方法代替,使整個方法更簡潔優(yōu)雅,這篇文章主要介紹了JDK8的lambda方式List轉Map,需要的朋友可以參考下
    2022-07-07
  • Java中的@PreAuthorize注解源碼解析

    Java中的@PreAuthorize注解源碼解析

    這篇文章主要介紹了Java中的@PreAuthorize注解源碼解析,@PreAuthorize注解會在方法執(zhí)行前進行權限驗證,支持Spring?EL表達式,它是基于方法注解的權限解決方案,需要的朋友可以參考下
    2023-10-10
  • Java阻塞隊列必看類:BlockingQueue快速了解大體框架和實現(xiàn)思路

    Java阻塞隊列必看類:BlockingQueue快速了解大體框架和實現(xiàn)思路

    這篇文章主要介紹了Java阻塞隊列必看類:BlockingQueue快速了解大體框架和實現(xiàn)思路,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 寫了兩年代碼之后再來談一談Spring中的Bean

    寫了兩年代碼之后再來談一談Spring中的Bean

    這篇文章主要介紹了寫了兩年代碼之后再來看看Spring中的Bean,這里列出四種常用的添加Bean的方式,介紹最基本的@Bean注解,@Bean注解聲明這個類是一個Bean,需要的朋友可以參考下
    2021-10-10
  • Java?File類的概述及常用方法使用詳解

    Java?File類的概述及常用方法使用詳解

    Java?File類的功能非常強大,下面這篇文章主要給大家介紹了關于Java中File類的概述及常用方法使用,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • IDEA搭建配置Java?Web項目的詳細步驟

    IDEA搭建配置Java?Web項目的詳細步驟

    這篇文章詳細介紹了如何使用IDEA創(chuàng)建和配置JavaWeb項目,包括項目結構設置、WEB-INF目錄和jsp文件的創(chuàng)建,以及Tomcat的配置,是Java初學者的實用指南,需要的朋友可以參考下
    2024-10-10
  • 淺談利用Spring的AbstractRoutingDataSource解決多數(shù)據(jù)源的問題

    淺談利用Spring的AbstractRoutingDataSource解決多數(shù)據(jù)源的問題

    本篇文章主要介紹了淺談利用Spring的AbstractRoutingDataSource解決多數(shù)據(jù)源的問題,具有一定的參考價值,有需要的可以了解一下
    2017-08-08
  • Java中的Random和ThreadLocalRandom詳細解析

    Java中的Random和ThreadLocalRandom詳細解析

    這篇文章主要介紹了Java中的Random和ThreadLocalRandom詳細解析,Random 類用于生成偽隨機數(shù)的流, 該類使用48位種子,其使用線性同余公式進行修改,需要的朋友可以參考下
    2024-01-01

最新評論