You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将IntelliJ IDEA的Spring Boot运行配置转为MacOS命令行执行命令

将IntelliJ IDEA Spring Boot运行配置转为MacOS命令行执行命令

问题背景

我有一个可正常运行的IntelliJ IDEA Spring Boot运行配置,希望在MacOS命令行中执行相同的运行任务。已提供项目的build.gradle配置、.idea/workspace.xml中对应的运行配置片段,以及使用的IntelliJ IDEA版本(2021.3.2 Ultimate Edition),需要将这些配置转换为外部可执行的命令或脚本。

项目配置信息

build.gradle文件

plugins {
    id 'org.springframework.boot' version '2.6.4'
    id 'io.spring.dependency-management' version '1.0.11.RELEASE'
    id 'java'
}

group = 'org.mountsinai'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = "15"

repositories {
    mavenCentral()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'
    implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2'
    runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc'
    implementation group: 'org.springframework', name: 'spring-aspects', version: '5.3.15'
    implementation group: 'nz.net.ultraq.thymeleaf', name: 'thymeleaf-layout-dialect', version: '3.0.0'
    implementation group: 'com.jayway.jsonpath', name: 'json-path', version: '2.7.0'
    implementation group: 'com.github.pcj', name: 'google-options', version: '1.0.0'
    implementation 'com.google.code.gson:gson:2.9.0'
}

tasks.named('test') {
    useJUnitPlatform()
    minHeapSize = "1024m" // initial heap size
    maxHeapSize = "2048m" // maximum heap size
}
targetCompatibility = JavaVersion.VERSION_15

workspace.xml中的运行配置片段

<configuration name="IrwMetadataIntegrationApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
  <module name="org.mountsinai.IRWMetadataIntegration.main" />
  <option name="SPRING_BOOT_MAIN_CLASS" value="org.mountsinai.IRWMetadataIntegration.IrwMetadataIntegrationApplication" />
  <option name="PROGRAM_PARAMETERS" value="--algorithm=batch --numOfStudiesToRetrieve=600" />
  <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="true" />
  <option name="ALTERNATIVE_JRE_PATH" value="15" />
  <method v="2">
    <option name="Make" enabled="true" />
  </method>
</configuration>

解决方法

方法一:让IntelliJ IDEA直接输出执行命令

  1. 在IDEA中启动你的Spring Boot运行配置,等待程序正常启动
  2. 打开底部的Run控制台面板
  3. 在控制台输出的最顶部,复制完整的Java执行命令(格式类似/Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home/bin/java -cp ... org.mountsinai.IRWMetadataIntegration.IrwMetadataIntegrationApplication --algorithm=batch --numOfStudiesToRetrieve=600)
  4. 将复制的命令直接粘贴到Mac终端执行即可,这就是IDEA实际运行时调用的完整命令

方法二:手动构建Gradle命令执行

因为项目使用Spring Boot Gradle插件,推荐用bootRun任务来实现和IDEA一致的运行效果:

直接启动项目

在项目根目录执行以下命令:

# 指定JDK15并传递程序参数
./gradlew bootRun --args="--algorithm=batch --numOfStudiesToRetrieve=600" -Dorg.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home

各参数说明:

  • ./gradlew bootRun:调用Gradle的Spring Boot启动任务,默认会先执行编译等前置步骤(对应IDEA配置中的Make操作)
  • --args="...":传递程序启动参数,对应workspace.xml里的PROGRAM_PARAMETERS
  • -Dorg.gradle.java.home=...:指定Gradle使用JDK15运行,对应配置中的ALTERNATIVE_JRE_PATH

构建Jar包后运行

如果需要打包成Jar文件离线运行:

  1. 先构建Jar包
./gradlew bootJar
  1. 构建完成后,在build/libs目录下找到生成的Jar文件,执行:
# 用JDK15运行Jar并传递参数
/Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home/bin/java -jar build/libs/IRWMetadataIntegration-0.0.1-SNAPSHOT.jar --algorithm=batch --numOfStudiesToRetrieve=600

内容的提问来源于stack exchange,提问作者Arthur

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 17:55:31