配置文件放在jar外面怎麼載入
① 如何打JAR包,並讀到包外的log4.properties之類的配置文件
你是在eclispe里打包嗎,我是在eclipse里打包的,裡面會自動生成個mainfest文件,但我們不用系統的這個,打包時選擇自己建的mainfest.mf文件,然後把需要的jar包路徑都寫進來就好了.你的jar包放在哪個文件夾下就寫哪個路徑呀。比如: 1、將第三方的jar包,放在lib目錄下 2、將lib目錄以及jar包,放在你的根目錄下 3、修改你的jar包的META-INF目錄下的Manifest.mf文件。 只要注意換行時要頂格寫,不要有空格。
② 如何用maven將配置文件打在jar包外
pom如下,最後mvn package -Dmaven.test.skip=true結果在target下面有jar,lib是依賴庫,配置文件放在和jar一個目錄<build>
<sourceDirectory>src/main/java</sourceDirectory>
<resources>
<resource>
<directory>src/main/resources</directory>
<targetPath>${project.build.directory}</targetPath>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<testSourceDirectory>src/test/java</testSourceDirectory>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</testResource>
</testResources>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[2.0,)</versionRange>
<goals>
<goal>-dependencies</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- 打包源碼一起發布到maven倉庫中 -->
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.1</version>
<configuration>
<attach>true</attach>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- 生成可執行JAR包命令 maven-jar-plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>***Main Application *** </mainClass>
</manifest>
<manifestEntries>
<Class-Path>./</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>
<!-- 拷貝依賴的jar包到lib目錄 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id></id>
<phase>package</phase>
<goals>
<goal>-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<!-- 生成可執行JAR包命令 maven-jar-plugin end -->
<!-- 生成可執行JAR包命令 maven-shade-plugin <plugin> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId> <version>1.2.1</version> <executions>
<execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration>
<transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>***.Application ***</mainClass> </transformer>
</transformers> </configuration> </execution> </executions> </plugin> -->
</plugins>
</build>
③ 一個可執行jar包怎麼讀取這個jar包外的配置文件
0
設置classpath,把配置文件放在classpath中某一目錄下
java -cp .;path; your.jar
④ 如何用maven將配置文件打在jar包外
您好,很高興能幫助您, pom如下,最後mvn package -Dmaven.test.skip=true結果在target下面有jar,lib是依賴庫,配置文件放在和jar一個目錄 <build> <sourceDirectory>src/main/java</sourceDirectory> <resources> <resource> <directory>src/main/resources</directory> <targetPath>${project.build.directory}</targetPath> <excludes> <exclude>**/*.java</exclude> </excludes> </resource> </resources> <testSourceDirectory>src/test/java</testSourceDirectory> <testResources> <testResource> <directory>src/test/resources</directory> <filtering>true</filtering> <excludes> <exclude>
⑤ tomcat 如何配置jar的載入
不是很懂你的問題
tomcat在安裝的時候 是自動掃描你的機器上安裝的JRE的
如果你安裝的是綠色版 那就自己選擇你機器上的JRE目錄
對於自己定義的jar包
你可以放在tomcat/lib目錄下 然後直接用import就可以引入了
⑥ 怎樣在jar包內部讀取jar包外部配置文件
在打了個可執行的jar包,通過 java -jar something.jar執行,目前配置文件(如something.properties)放在jar包里了,現在我想把配置文件放在jar
⑦ 可執行jar怎麼讀取外部配置文件
先看代碼目錄結構: src/weather/ QueryWeather.java weather.xml 程序裡面可以直接讀取到weather.xml文件,代碼如下: private static String getXmlContent()throws IOException { FileReader f = new FileReader("src/weather/weather.xml"); BufferedReader fb = new BufferedReader(f); StringBuffer sb = new StringBuffer(""); String s = ""; while((s = fb.readLine()) != null) { sb = sb.append(s);}return sb.toString();}但是一旦把這個class文件和xml文件打成jar包再運行,對不起,報錯,QueryWeather.class位元組碼根本找不到weather.xml 在看打成jar包的結構:META-INFMANIFEST.MFweatherQueryWeather.class weather.xml 用下面的方法就可以找到weather.xml private static String getXmlContent()throws IOException { Reader f = new InputStreamReader(QueryWeather.class.getClass().getResourceAsStream("/weather/weather.xml")); BufferedReader fb = new BufferedReader(f); StringBuffer sb = new StringBuffer(""); String s = "";
⑧ 想把spring配置放在jar包外,main方法里該怎麼讀取寫」
想把spring配置放在jar包外,main方法里該怎麼讀取寫」
使用ApplicationContext介面的對應實現類載入spring配置文件
一般常用的有類和類
分別讀取classpath目錄和指定的文件系統目錄下的spring配置文件
比如你的spring配置文件叫applicationContext.xml,放置在資源文件夾的根目錄下面,就可以寫成
ApplicationContext context = new ("classpath:applicationContext.xml");
就可以載入了
⑨ 把jar文件放到另一個jar中,然後載入它
做法很簡單,其實jar文件就是壓縮文件,裝了win rar/zip的話就好辦了。
首先,選中多個jar文件,點右鍵「解壓到……」某個目錄,這時候應該會有些文件重疊,主要是MANIFEST.MF,不管它,解壓完畢,把合並的信息填入MANIFEST.MF或者寫個readme,隨便你,總之最好記錄下這次歸並,為將來升級有據可查。
然後,壓縮這個文件夾內的內容,注意根目錄要正確!選擇zip格式壓縮,擴展名為jar。
最後,合並完畢,起個好名字吧。
自動合並的工具我沒找到 不好意思 希望能幫助你
⑩ jar 如何引用外部spring配置文件
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.">
<property name="locations">
<list>
<value>classpath:dataSource.properties</value>
</list>
</property>
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"
value="${drivername}">
</property>
<property name="url"
value="${url}">
</property>
<property name="username" value="${username}"></property>
<property name="password" value="${password}"></property>
</bean>
注入載入properties 文件的類,這個類是spring自帶的,不用自己寫,bean 的id名字隨便起,不影響,你考過去只需要換掉properties 路徑就可以, ,properties文件中格式如下
url=jdbc\:sqlserver\://192.168.1.120\:1433;databaseName\=XXXX
username=sa
password=sa
drivername=com.microsoft.sqlserver.jdbc.SQLServerDriver
不要加其他標點,針對不同數據源你可以自己改