Heim > Java > javaLernprogramm > Hauptteil

Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert

巴扎黑
Freigeben: 2017-06-26 10:39:29
Original
1857 Leute haben es durchsucht

Werfen wir zunächst einen Blick auf die Standardverzeichnisstruktur des MAVENx-Projekts:

Im Allgemeinen sind die von uns verwendeten Ressourcendateien (verschiedene XML-Dateien). , Eigenschaften, XSD-Dateien usw.) werden unter src/main/resources abgelegt. Wenn Maven zum Packen verwendet wird, kann Maven diese Ressourcendateien in das entsprechende JAR oder WAR packen.

Manchmal, wie zum Beispiel die Mapper.xml-Datei von Mybatis, sind wir es gewohnt, sie mit Mapper.java zusammenzustellen, beide unter src/main/java Auf diese Weise, wenn maven zum Verpacken, Sie müssen die Datei pom.xml ändern, um die Datei mapper.xml in ein JAR oder WAR zu packen. Andernfalls werden diese Dateien nicht gepackt. (Maven glaubt, dass src/main/java nur der Quellcodepfad von Java ist). Es gibt viele Methoden im Internet, die ich ausprobiert habe, und es stehen mehrere Methoden zur Verfügung.

Methode 1, wobei **/* geschrieben wird, um sicherzustellen, dass Ressourcendateien in Unterverzeichnissen auf allen Ebenen gepackt werden.

XML-Code

Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert
<build>
    <finalname>test</finalname>
    <!--
    这样也可以把所有的xml文件,打包到相应位置。
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
                <include>**/*.tld</include>
            </includes>
            <filtering>false</filtering><--这里是false,用true会报 数据库连接 错误-->
        
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
                <include>**/*.tld</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    
</build>
Nach dem Login kopieren
Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert

Methode 2: Verwenden Sie das Build-Helper-Maven-Plugin-Plugin

Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert
<build>
    ...
    
        ...
        <!--
        此plugin可以用
        利用此plugin,把源代码中的xml文件,
        打包到相应位置,这里主要是为了打包Mybatis的mapper.xml文件 
        -->
        <plugin>
            <groupid>org.codehaus.mojo</groupid>
            <artifactid>build-helper-maven-plugin</artifactid>
            <version>1.8</version>
            <executions>
                <execution>
                    <id>add-resource</id>
                    <phase>generate-resources</phase>
                    <goals>
                        <goal>add-resource</goal>
                    </goals>
                    <configuration>
                        <resources>
                            <resource>
                                <directory>src/main/java</directory>
                                <includes>
                                    <include>**/*.xml</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
            </executions>
        </plugin>   
        ...
         
    ...
</build>
Nach dem Login kopieren
Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert

Methode 3, Verwendung des Maven-Resources-Plugin-Plugins

Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert
<build>
    ...
    
        ...
        <!--
        此plugin可以用
        利用此plugin,把源代码中的xml文件,打包到相应位置,
        这里主要是为了打包Mybatis的mapper.xml文件 
        -->
        <plugin>
            <artifactid>maven-resources-plugin</artifactid>
            <version>2.5</version>
            <executions>
                <execution>
                    <id>copy-xmls</id>
                    <phase>process-sources</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputdirectory>${basedir}/target/classes</outputdirectory>
                        <resources>
                            <resource>
                                <directory>${basedir}/src/main/java</directory>
                                <includes>
                                    <include>**/*.xml</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
            </executions>
        </plugin>   
        ...
         
    ...
</build>
Nach dem Login kopieren
Es treten Probleme auf, wenn Maven das Framework mit Mybaits integriert

Das obige ist der detaillierte Inhalt vonEs treten Probleme auf, wenn Maven das Framework mit Mybaits integriert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage