Angular和Spring Boot应用程序gradle的包装大战

问题描述

我正在从事Spring Boot角度应用程序。我在后端创建了一个Get rest方法,对于前端,我使用angular来显示结果。

这是项目的结构。

Project structure

我必须将应用程序打包为大战(弹簧靴+角形)。我已经成功创建了战争并将其部署在Weblogic服务器上,但是只有REST Get方法有效,我无法显示前端。

这是我的build.gradle文件

plugins {
id 'org.springframework.boot' version '2.3.3.RELEASE'
id 'io.spring.dependency-management' version '1.0.10.RELEASE'
id 'java'
id 'war'
}

group = 'com.dannti'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'

repositories {
mavenCentral()
}

war {
  enabled=true
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-websocket'
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
    exclude group: 'org.junit.vintage',module: 'junit-vintage-engine'
}
}

test {
useJUnitPlatform()
 }

 def webappDir = "$projectDir/src/main/webapp"

processResources {
dependsOn "buildAngular"
}

task buildAngular(type:Exec) {
// installAngular should be run prior to this task
dependsOn "installAngular"
workingDir "$webappDir"
inputs.dir "$webappDir"
// Add task to the standard build group
group = BasePlugin.BUILD_GROUP
// ng doesn't exist as a file in windows -> ng.cmd
if (System.getProperty("os.name").toupperCase().contains("WINDOWS")){
    commandLine "ng.cmd","build"
  } else {
    commandLine "ng","build"
  }
}

task installAngular(type:Exec) {
 workingDir "$webappDir"
inputs.dir "$webappDir"
group = BasePlugin.BUILD_GROUP
if (System.getProperty("os.name").toupperCase().contains("WINDOWS")){
    commandLine "npm.cmd","install"
} else {
    commandLine "npm","install"
}
}

我认为我应该在build.gradle文件添加一些内容,但是我不知道该怎么做,而且我也没有找到示例

编辑:

我通过将角度构建结果的目录更改为“ ../resources/static”来对文件进行了修改

          "builder": "@angular-devkit/build-angular:browser","options": {
        "outputPath": "../resources/static","index": "src/index.html","main": "src/main.ts","polyfills": "src/polyfills.ts","tsConfig": "tsconfig.app.json",

但是现在我遇到一个错误,即找不到Angular应用程序的js文件
谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)