Java打包exe读取配置文件

在Java开发中,我们经常需要将Java程序打包成可执行文件,以方便在Windows系统上运行。同时,我们也经常需要读取配置文件来配置程序的行为,例如数据库连接信息、日志路径等。本文将介绍如何使用Java打包exe并读取配置文件。

打包为可执行文件

在Java中,我们可以使用第三方工具将Java程序打包为可执行文件。常用的工具有Launch4j和Excelsior JET。在本文中,我们将使用Launch4j来演示。

首先,我们需要下载并安装Launch4j。然后,我们可以按照以下步骤来打包Java程序为可执行文件:

  1. 编写Java程序。假设我们的程序需要读取一个配置文件来获取数据库连接信息。
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class Main {
    public static void main(String[] args) {
        try {
            Properties properties = new Properties();
            properties.load(new FileInputStream("config.properties"));
            
            String url = properties.getProperty("db.url");
            String username = properties.getProperty("db.username");
            String password = properties.getProperty("db.password");
            
            System.out.println("URL: " + url);
            System.out.println("Username: " + username);
            System.out.println("Password: " + password);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. 创建配置文件config.properties,并将数据库连接信息写入该文件。
db.url=jdbc:mysql://localhost:3306/mydb
db.username=root
db.password=123456
  1. 使用Launch4j将Java程序打包为exe。打开Launch4j,点击“打开配置文件”按钮,选择一个配置文件,例如config.xml
<launch4jConfig>
    <dontWrapJar>true</dontWrapJar>
    <headerType>gui</headerType>
    <jar>path/to/your/jarfile.jar</jar>
    <outfile>path/to/your/exefile.exe</outfile>
    <errTitle>Error</errTitle>
    <classPath>
        <mainClass>your.main.class</mainClass>
        <addDependencies>true</addDependencies>
        <preCp>anything that should be on classpath before jar</preCp>
    </classPath>
    <jre>
        <path>path/to/jre</path>
        <minVersion>1.8.0</minVersion>
        <maxVersion>1.8.0</maxVersion>
        <jdkPreference>preferJre</jdkPreference>
    </jre>
    <versionInfo>
        <fileVersion>1.0.0.0</fileVersion>
        <txtFileVersion>1.0.0</txtFileVersion>
        <fileDescription>My Application</fileDescription>
        <productName>My Application</productName>
        <internalName>myapp</internalName>
        <originalFilename>myapp.exe</originalFilename>
    </versionInfo>
</launch4jConfig>

在配置文件中,我们需要指定打包后的exe文件路径、Java程序的jar文件路径、主类名、依赖jar文件等信息。

  1. 点击“构建EXE”按钮,Launch4j会根据配置文件将Java程序打包为exe文件。

读取配置文件

在Java程序中,我们可以使用java.util.Properties类来读取配置文件。在上述示例代码中,我们通过Properties类的load方法读取了配置文件config.properties

Properties properties = new Properties();
properties.load(new FileInputStream("config.properties"));

Properties对象中,我们可以使用getProperty方法获取配置文件中的属性值。

String url = properties.getProperty("db.url");
String username = properties.getProperty("db.username");
String password = properties.getProperty("db.password");

以上代码将分别获取配置文件中的db.urldb.usernamedb.password属性的值。

总结

本文介绍了如何使用Java打包exe并读取配置文件。我们使用Launch4j工具将Java程序打包为exe,并使用Properties类读取配置文件。通过这种方式,我们可以方便地将Java程序发布为可执行文件,并通过配置文件来配置程序的行为。

请注意,在实际开发中,我们需要根据具体需求选择合适的打包工具,并按照实际项目结构和配置文件格式进行相应的调整。希望本文能帮助您更好地理解并应用Java打包exe和读取配置文件的方法。

参考文献: