Tôi đang cố gắng thay đổi quá trình xây dựng của chúng tôi từ Maven sang Gradle (V 2.9). Trong Maven tôi đã sử dụng biên dịch trước cho JSP như sau:Biên dịch JSP với Gradle
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-jspc-maven-plugin</artifactId>
<version>9.2.7.v20150116</version>
<executions>
<execution>
<phase>package</phase>
<id>jspc</id>
<goals>
<goal>jspc</goal>
</goals>
<configuration>
<excludes>**\/*inc_page_bottom.jsp,**\/*inc_page_top.jsp</excludes>
<includes>**\/*.jsp</includes>
</configuration>
</execution>
</executions>
</plugin>
và nó hoạt động tốt. Bây giờ tôi đang cố gắng tìm cách để làm tương tự với gradle. Tôi đã tìm thấy một số thông tin/ví dụ build.gradle nhưng không có gì hoạt động thực sự. Im hiện đang sử dụng Tomcat 7 như servlet container và im lên kế hoạch chuyển đổi trong vài tuần tới 8. Sẽ hoàn hảo để biên dịch chúng cho container servlet đích nhưng trước hết tôi sẽ sẵn lòng biên dịch chúng như tôi đã làm điều này với maven cho/với cầu cảng.
Một phần của build.gradle hiện tại của tôi mà mang lại cho tôi một lỗi:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.bmuschko:gradle-tomcat-plugin:2.2.4'
}
}
apply plugin: 'com.bmuschko.tomcat'
tomcat {
jasper {
validateXml = true
errorOnUseBeanInvalidClassAttribute = false
compilerSourceVM = "1.8"
compilerTargetVM = "1.8"
}
}
task compileJsps(type: JavaCompile, dependsOn: 'clean') {
dependsOn tomcatJasper
group = 'build'
description = 'Translates and compiles JSPs'
classpath = configurations.tomcat + sourceSets.main.output + sourceSets.main.runtimeClasspath
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
destinationDir = file("$buildDir/jasper-classes")
sourceSets {
main {
java {
srcDir "$buildDir/jasper"
}
}
}
}
dependencies {
def tomcatVersion = '7.0.59'
tomcat "org.apache.tomcat.embed:tomcat-embed-core:${tomcatVersion}",
"org.apache.tomcat.embed:tomcat-embed-logging-juli:${tomcatVersion}",
"org.apache.tomcat.embed:tomcat-embed-jasper:${tomcatVersion}"
}
Im nhận được lỗi sau:
:tomcatJasper FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':tomcatJasper'.
> org.apache.jasper.JasperException: file:/xxx/xxx/xxx/xxx/src/main/webapp/index.jsp (line: 6, column: 0) The value for the useBean class attribute xxx.xxx.xxx.XxxXxx is invalid.
Chạy này jsp trong Tomcat 7 hoạt động tốt ... Có ai có một cập nhật howto hoặc một gợi ý?
Bạn có nhận được câu trả lời về vấn đề này không? Tôi thấy cùng một vấn đề trong maven nơi một <% @ include file = "directives.jsp"%> hoạt động trên máy chủ nhưng không phải trong ngữ cảnh biên dịch trước –
Thật không may, không (và không tìm thấy bất kỳ giải pháp nào cho bản thân ...) – StephanM
Chúng tôi cũng đã từ bỏ việc nâng cấp jdt-core của cầu tàu để có được trình biên dịch jasper tương thích với jre 18u112 –