Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( Checkstyle ã 9.0 â 10.0 ã¸ãã¼ã¸ã§ã³ã¢ãããã )
æ¦è¦
è¨äºä¸è¦§ã¯ãã¡ãã§ãã
Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( Spring Boot ã 2.5.9 â 2.6.3 ã¸ãã¼ã¸ã§ã³ã¢ãããã ) ã®ç¶ãã§ãã
- ä»åã®æé ã§ç¢ºèªã§ããã®ã¯ä»¥ä¸ã®å
容ã§ãã
- Checkstyle ã 9.0 â 10.0 ã¸ãã¼ã¸ã§ã³ã¢ãããã¾ãã
- ææ°çã® google_checks.xml ã®å 容ãåæ ãã¾ãã
åç §ãããµã¤ãã»æ¸ç±
-
checkstyle / checkstyle
https://github.com/checkstyle/checkstyle checkstyle/checkstyle - checkstyle/src/main/resources/google_checks.xml
https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
ç®æ¬¡
- build.gradle ãå¤æ´ãã
- ææ°çã® google_checks.xml ããå¤æ´ç¹ãåæ ãã
- IntelliJ IDEA ã® CheckStyle-IDEA Plugin ã使ç¨ãã Checkstyle ã®ãã¼ã¸ã§ã³ã 10.0 ã«å¤æ´ãã
æé
build.gradle ãå¤æ´ãã
checkstyle { configFile = file("${rootProject.projectDir}/config/checkstyle/google_checks.xml") toolVersion = "10.0" sourceSets = [project.sourceSets.main] }
toolVersion = "9.0"
âtoolVersion = "10.0"
ã«å¤æ´ãã¾ãã
Gradle Tool Window ã®å·¦ä¸ã«ãããRefresh all Gradle projectsããã¿ã³ãã¯ãªãã¯ãã¦æ´æ°ããå¾ãclean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã㨠BUILD SUCCESSFUL ãåºåããã¾ããã
ææ°çã® google_checks.xml ããå¤æ´ç¹ãåæ ãã
ææ°çã® google_checks.xml ããå¤æ´ç¹ãåæ ãã¾ããä»ååæ ããå 容ãç®æ¡æ¸ãã§è¨è¿°ãã¦ããã¾ãã
<module name="WhitespaceAfter">
ã®<property name="tokens">
ã® value ã«ELLIPSIS, LITERAL_SWITCH, LAMBDA
ã追å ãã¾ããã<module name="SingleLineJavadoc">
ãã<property name="ignoreInlineTags" value="false"/>
ãåé¤ãã¾ããã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã㨠BUILD SUCCESSFUL ãåºåããã¾ããã
IntelliJ IDEA ã® CheckStyle-IDEA Plugin ã使ç¨ãã Checkstyle ã®ãã¼ã¸ã§ã³ã 10.0 ã«å¤æ´ãã
CheckStyle-IDEA Plugin ã«è¨å®ãããã¼ã¸ã§ã³ã 10.0 ã«ãã¾ãã
å±¥æ´
2022/03/20
åççºè¡ã
Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( Spring Boot ã 2.5.9 â 2.6.3 ã¸ãã¼ã¸ã§ã³ã¢ãããã )
æ¦è¦
è¨äºä¸è¦§ã¯ãã¡ãã§ãã
- ä»åã®æé ã§ç¢ºèªã§ããã®ã¯ä»¥ä¸ã®å
容ã§ãã
- Spring Boot ã 2.5.9 â 2.6.3 ã¸ãã¼ã¸ã§ã³ã¢ãããã¾ãã
åç §ãããµã¤ãã»æ¸ç±
FasterXML / jackson-dataformat-xml
https://github.com/FasterXML/jackson-dataformat-xmlConfigure Jackson ObjectMapper in Spring MVC
https://vividcode.io/configure-jackson-object-mapper-in-spring-mvc/
ç®æ¬¡
- Spring Initializr 㧠2.6.3 ã®ããã¸ã§ã¯ããä½æãã
- build.gradle ãå¤æ´ãã
- åºåãããã¡ãã»ã¼ã¸ã»å¤±æãããã¹ãã®åå ãåãé¤ãï¼ãããããªãï¼
æé
Spring Initializr 㧠2.6.3 ã®ããã¸ã§ã¯ããä½æãã
Spring Initializr 㧠2.6.3 ã®ããã¸ã§ã¯ããä½æãã¦ãçæããã build.gradle ãè¦ã¦åæ ããæ¹ãè¯ãç¹ãããã確èªãã¾ãã
以ä¸ã® build.gradle ãä½æããã¾ããã
plugins { id 'org.springframework.boot' version '2.6.3' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'com.example' version = '0.0.1-SNAPSHOT' sourceCompatibility = '17' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-data-redis' implementation 'org.springframework.boot:spring-boot-starter-freemarker' implementation 'org.springframework.boot:spring-boot-starter-mail' implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.session:spring-session-data-redis' implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' runtimeOnly 'org.postgresql:postgresql' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.springframework.security:spring-security-test' } tasks.named('test') { useJUnitPlatform() }
ä»åã¯åæ ããæ¹ãè¯ããããªç¹ã¯ããã¾ããã§ããã
build.gradle ãå¤æ´ãã
buildscript { ext { group "ksbysample" version "2.6.3" } repositories { mavenCentral() maven { url "https://repo.spring.io/release/" } gradlePluginPortal() } dependencies { // for doma-codegen-plugin classpath "org.postgresql:postgresql:42.3.2" } } plugins { id "java" id "groovy" id "eclipse" id "idea" id "org.springframework.boot" version "2.6.3" id "io.spring.dependency-management" version "1.0.11.RELEASE" id "checkstyle" id "com.github.spotbugs" version "4.7.3" id "pmd" id "net.ltgt.errorprone" version "2.0.2" id "com.gorylenko.gradle-git-properties" version "2.4.0" id "org.seasar.doma.codegen" version "1.4.1" } sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 wrapper { gradleVersion = "7.4" distributionType = Wrapper.DistributionType.ALL } [compileJava, compileTestGroovy, compileTestJava]*.options*.encoding = "UTF-8" [compileJava, compileTestGroovy, compileTestJava]*.options*.compilerArgs = ["-Xlint:all,-options,-processing,-path"] tasks.withType(JavaCompile).configureEach { options.errorprone { disableWarningsInGeneratedCode = true disable("SameNameButDifferent") } } tasks.named("compileTestJava").configure { options.errorprone.enabled = false } bootJar { duplicatesStrategy = DuplicatesStrategy.INCLUDE } jar { enabled = false } // for Doma 2 // Copy the resources referred by the Doma annotation processors to // the destinationDir of the compileJava task task copyDomaResources(type: Sync) { from sourceSets.main.resources.srcDirs into compileJava.destinationDirectory include "doma.compile.config" include "META-INF/**/*.sql" include "META-INF/**/*.script" } compileJava.dependsOn copyDomaResources springBoot { buildInfo() } idea { module { inheritOutputDirs = false outputDir = file("$buildDir/classes/main/") } } configurations { compileOnly.extendsFrom annotationProcessor // annotationProcessor 㨠testAnnotationProcessorãcompileOnly 㨠testCompileOnly ãä½µè¨ä¸è¦ã«ãã testAnnotationProcessor.extendsFrom annotationProcessor testImplementation.extendsFrom compileOnly // JUnit 4 ãä¾åé¢ä¿ã«å ¥ããªãããã«ãã all { exclude group: "junit", module: "junit" } // for SpotBugs spotbugsStylesheets { transitive = false } } checkstyle { configFile = file("${rootProject.projectDir}/config/checkstyle/google_checks.xml") toolVersion = "9.0" sourceSets = [project.sourceSets.main] } spotbugs { toolVersion = "${spotbugs.toolVersion.get()}" ignoreFailures = true spotbugsTest.enabled = false excludeFilter = file("${rootProject.projectDir}/config/spotbugs/exclude.xml") } spotbugsMain { reports { html { enabled = true } } } pmd { toolVersion = "6.38.0" sourceSets = [project.sourceSets.main] ignoreFailures = true consoleOutput = true ruleSetFiles = rootProject.files("/config/pmd/pmd-project-rulesets.xml") ruleSets = [] } repositories { mavenCentral() } dependencyManagement { imports { // bomProperty ã«æå®å¯è½ãª property ã¯ä»¥ä¸ã® URL ã® BOM ã«è¨è¿°ããã // https://repo1.maven.org/maven2/org/springframework/boot/spring-boot-dependencies/2.5.4/spring-boot-dependencies-2.5.4.pom mavenBom(org.springframework.boot.gradle.plugin.SpringBootPlugin.BOM_COORDINATES) { // Spring Boot ã® BOM ã«å®ç¾©ããã¦ãããã¼ã¸ã§ã³ããå¤æ´ããå ´åã«ã¯ãããã«ä»¥ä¸ã®ããã«è¨è¿°ãã // bomProperty "thymeleaf.version", "3.0.9.RELEASE" } mavenBom("org.junit:junit-bom:5.8.2") } } dependencies { def spockVersion = "2.0-groovy-3.0" def jdbcDriver = "org.postgresql:postgresql:42.3.2" def domaVersion = "2.51.0" def lombokVersion = "1.18.22" def errorproneVersion = "2.9.0" // dependency-management-plugin ã«ãããã¼ã¸ã§ã³çªå·ãèªåã§è¨å®ããããã® // Appendix F. Dependency versions ( https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-dependency-versions.html ) åç § implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-thymeleaf") implementation("org.thymeleaf.extras:thymeleaf-extras-springsecurity5") implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-freemarker") implementation("org.springframework.boot:spring-boot-starter-mail") implementation("org.springframework.boot:spring-boot-starter-security") implementation("org.springframework.boot:spring-boot-starter-data-redis") implementation("org.springframework.boot:spring-boot-starter-amqp") implementation("org.springframework.boot:spring-boot-starter-actuator") developmentOnly("org.springframework.boot:spring-boot-devtools") annotationProcessor("org.springframework.boot:spring-boot-configuration-processor") implementation("org.springframework.session:spring-session-data-redis") implementation("org.springframework.retry:spring-retry") implementation("com.fasterxml.jackson.dataformat:jackson-dataformat-xml") implementation("org.apache.commons:commons-lang3") implementation("org.codehaus.janino:janino") implementation("io.micrometer:micrometer-registry-prometheus") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.springframework.security:spring-security-test") testImplementation("org.yaml:snakeyaml") testImplementation("org.codehaus.groovy:groovy-sql") testImplementation("org.mockito:mockito-inline") // dependency-management-plugin ã«ãããã¼ã¸ã§ã³çªå·ãèªåã§è¨å®ãããªããã®ããããã¯ææ°ãã¼ã¸ã§ã³ãæå®ããããã® runtimeOnly("${jdbcDriver}") implementation("com.integralblue:log4jdbc-spring-boot-starter:2.0.0") implementation("org.simpleframework:simple-xml:2.7.1") implementation("com.univocity:univocity-parsers:2.9.1") implementation("com.google.guava:guava:31.0.1-jre") implementation("org.flywaydb:flyway-core:8.4.4") testImplementation("org.dbunit:dbunit:2.7.2") { exclude group: "postgresql", module: "postgresql" } testImplementation("com.icegreen:greenmail:1.6.5") testImplementation("org.assertj:assertj-core:3.22.0") testImplementation("com.jayway.jsonpath:json-path:2.7.0") testImplementation("org.jsoup:jsoup:1.14.3") testImplementation("cglib:cglib-nodep:3.3.0") testImplementation("org.spockframework:spock-core:${spockVersion}") testImplementation("org.spockframework:spock-spring:${spockVersion}") // for lombok // testAnnotationProcessorãtestCompileOnly ãä½µè¨ããªãã¦ãããã configurations ã§è¨å®ãã¦ãã annotationProcessor("org.projectlombok:lombok:${lombokVersion}") compileOnly("org.projectlombok:lombok:${lombokVersion}") // for Doma implementation("org.seasar.doma:doma-core:${domaVersion}") implementation("org.seasar.doma:doma-slf4j:${domaVersion}") annotationProcessor("org.seasar.doma:doma-processor:${domaVersion}") // for JUnit 5 // junit-jupiter 㧠junit-jupiter-api, junit-jupiter-params, junit-jupiter-engine ã®ï¼ã¤ãä¾åé¢ä¿ã«è¿½å ããã testImplementation("org.junit.jupiter:junit-jupiter") testRuntimeOnly("org.junit.platform:junit-platform-launcher") // for Error Prone ( http://errorprone.info/ ) errorprone("com.google.errorprone:error_prone_core:${errorproneVersion}") compileOnly("com.google.errorprone:error_prone_annotations:${errorproneVersion}") // for SpotBugs spotbugs(configurations.spotbugsPlugins.dependencies) annotationProcessor("com.github.spotbugs:spotbugs-annotations:${spotbugs.toolVersion.get()}") spotbugsPlugins("com.h3xstream.findsecbugs:findsecbugs-plugin:1.11.0") } ..........
Spring Boot 2.5.4 ã¸ã®ãã¼ã¸ã§ã³ã¢ããã¨ãã¦ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
- buildscript block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
version "2.5.9"
âversion "2.6.3"
- plugins block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
id "org.springframework.boot" version "2.5.9"
âid "org.springframework.boot" version "2.6.3"
å種ã©ã¤ãã©ãªã®ãã¼ã¸ã§ã³ã¢ããã¨ãã¦ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
- buildscript block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
classpath "org.postgresql:postgresql:42.2.24"
âclasspath "org.postgresql:postgresql:42.3.2"
- plugins block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
id "com.gorylenko.gradle-git-properties" version "2.3.1"
âid "com.gorylenko.gradle-git-properties" version "2.4.0"
- dependencyManagement block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
mavenBom("org.junit:junit-bom:5.8.1")
âmavenBom("org.junit:junit-bom:5.8.2")
- dependencies block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
def jdbcDriver = "org.postgresql:postgresql:42.2.24"
âdef jdbcDriver = "org.postgresql:postgresql:42.3.2"
def domaVersion = "2.49.0"
âdef domaVersion = "2.51.0"
implementation("com.google.guava:guava:30.1.1-jre")
âimplementation("com.google.guava:guava:31.0.1-jre")
implementation("org.flywaydb:flyway-core:7.14.0")
âimplementation("org.flywaydb:flyway-core:8.4.4")
testImplementation("org.assertj:assertj-core:3.20.2")
âtestImplementation("org.assertj:assertj-core:3.22.0")
testImplementation("com.jayway.jsonpath:json-path:2.6.0")
âtestImplementation("com.jayway.jsonpath:json-path:2.7.0")
testImplementation("org.jsoup:jsoup:1.14.2")
âtestImplementation("org.jsoup:jsoup:1.14.3")
Gradle Tool Window ã®å·¦ä¸ã«ãããRefresh All Gradle Projectsããã¿ã³ãã¯ãªãã¯ãã¦æ´æ°ãã¾ãã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã㨠SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
ã®ã¡ãã»ã¼ã¸ãåºåããã¾ããã
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
ã¾ãããã¹ããï¼ä»¶å¤±æãã¾ããã
åºåãããã¡ãã»ã¼ã¸ã®åå ãåãé¤ãï¼ãããããªãï¼
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
2.6.3 㨠2.5.9 㮠gradlew dependencies
ã³ãã³ãã®åºåçµæãæ¯è¼ããã¨ã
- åé¤ãããã¢ã¸ã¥ã¼ã«ã¯ä»¥ä¸ã®ï¼ã¤ã
- http://www.slf4j.org/codes.html#StaticLoggerBinder ã«ã¯
Note that slf4j-api versions 2.0.x and later use the ServiceLoader mechanism. Backends such as logback 1.3 and later which target slf4j-api 2.x, do not ship with org.slf4j.impl.StaticLoggerBinder.
ã¨è¨è¿°ããã¦ãã¾ããã2.6.3 㨠2.5.9 ã®ã©ã¡ãã slf4j-api ã®ãã¼ã¸ã§ã³ã¯ 1.7.33ãlogback ã®ãã¼ã¸ã§ã³ã¯ 1.2.10 ã§ããã If you place a logging backend which targets slf4j-api 2.0.x, you need slf4j-api-2.x.jar on the classpath.
ã®è¨è¿°ãããã¾ãããorg.slf4j:slf4j-simple:1.8.0-beta4 ã spotbugsSlf4j - configuration for the SLF4J provider to run SpotBugs ã«å«ã¾ãã¦ãã¾ããã
ã¨ããçµæ㧠SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
ã®ã¡ãã»ã¼ã¸ãåºåãããåå ã¯åãããããã
build.gradle ã§å¤æ´ããç¹ãä¸æ¦å ã«æ»ãã¦ï¼ã¤ãã¤å¤æ´ãã¦ç¢ºèªãããã¨ãã¦ã¿ãã¨ããã
- ï¼åç®ä»¥éã® build ã¿ã¹ã¯ã§ã¯
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
ã®ã¡ãã»ã¼ã¸ãåºåãããªãã gradlew --stop
㧠Gradle Daemon ãåæ¢ãã¦ãã build ã¿ã¹ã¯ãå®è¡ããã¨ãæåã®ï¼åç®ã ãSLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
ã®ã¡ãã»ã¼ã¸ãåºåãããã
ã¨ãããã¨ãå¤æãã¾ããã
ã¡ãã»ã¼ã¸ãåºåãããåå 㯠Gradle ã®ããã§æ°ã«ããå¿ è¦ããªããããªã®ã§ãä½ã対å¿ã¯ããªããã¨ã«ãã¾ãã
testGetLibraryListByJackson2Xml() FAILED
ãã¹ãã失æããæã«ã³ã³ã½ã¼ã«ã«åºåãããã¡ãã»ã¼ã¸ã¯ä»¥ä¸ã®å 容ã§ããã
CalilApiServiceTest > testGetLibraryListByJackson2Xml() FAILED org.springframework.web.client.RestClientException at CalilApiServiceTest.java:37 Caused by: org.springframework.http.converter.HttpMessageNotReadableException at CalilApiServiceTest.java:37 Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException at CalilApiServiceTest.java:37
testGetLibraryListByJackson2Xml ã®ãã¹ããåç¬ã§å®è¡ããã¨ä»¥ä¸ã®ã¡ãã»ã¼ã¸ãåºåããã¾ããã
Caused by: com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "Library" (class ksbysample.webapp.lending.service.calilapi.response.LibrariesForJackson2Xml), not marked as ignorable (one known property: "libraryList"]) at [Source: (PushbackInputStream); line: 4, column: 12] (through reference chain: ksbysample.webapp.lending.service.calilapi.response.LibrariesForJackson2Xml["Library"])
Unrecognized field "Library" (class ksbysample.webapp.lending.service.calilapi.response.LibrariesForJackson2Xml)
ã¨åºåããã¦ãããLibrariesForJackson2Xml ã¯ã©ã¹ãè¦ã㨠@XmlElement(name = "Library")
ãåä½ãã¦ããªãããã§ãã
@XmlRootElement(name = "Libraries") @Data public class LibrariesForJackson2Xml { private List<LibraryForJackson2Xml> libraryList = new ArrayList<>(); @XmlElement(name = "Library") public void addLibraryList(LibraryForJackson2Xml library) { libraryList.add(library); } }
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
ã§èª¿æ»ããæã« com.fasterxml.jackson.module:jackson-module-jaxb-annotations
ãä¾åé¢ä¿ããåé¤ããã¦ããã®ã§ããããããããåå ã§ãããã
build.gradle ã® dependencies block ã« implementation("com.fasterxml.jackson.module:jackson-module-jaxb-annotations:2.13.1")
ã追å ããã¨å¤±æãããã¹ããæåããããã«ãªãã¾ããã
ãã ãåé¤ããã JAXB é¢é£ã®ã¢ã¸ã¥ã¼ã«ã追å ããã®ãéåæãããã®ã§ãå¥ã®æ¹æ³ãèãã¦ã¿ã¾ãã
https://github.com/FasterXML/jackson-dataformat-xml#additional-annotations ãè¦ã㨠@XmlRootElementã@XmlElement ã®ä»£ããã¨ã㦠@JacksonXmlRootElementã@JacksonXmlProperty ãæä¾ããã¦ãããããªã®ã§ããããã«å¤æ´ãã¾ãã
package ksbysample.webapp.lending.service.calilapi.response; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; import lombok.Data; import java.util.ArrayList; import java.util.List; @JacksonXmlRootElement(localName = "Libraries") @Data public class LibrariesForJackson2Xml { private List<LibraryForJackson2Xml> libraryList = new ArrayList<>(); @JacksonXmlProperty(localName = "Library") public void addLibraryList(LibraryForJackson2Xml library) { libraryList.add(library); } }
ã¾ãã調æ»ä¸ã« Configure Jackson ObjectMapper in Spring MVC ã®è¨äºãè¦ã¤ãã¾ãããä»ã¯ç´æ¥ XmlMapper ã new ããã®ã§ã¯ãªã Jackson2ObjectMapperBuilder ã使ç¨ããæ¹ãè¯ããããªã®ã§ãsrc/main/java/ksbysample/webapp/lending/config/ApplicationConfig.java ã® mappingJackson2XmlHttpMessageConverter ã¡ã½ããã以ä¸ã®ããã«å¤æ´ãã¾ãã
@SuppressWarnings({"PMD.UnnecessaryFullyQualifiedName"}) @Bean @ConditionalOnClass(com.fasterxml.jackson.dataformat.xml.XmlMapper.class) public MappingJackson2XmlHttpMessageConverter mappingJackson2XmlHttpMessageConverter() { // findAndRegisterModules ã¡ã½ãããå¼ã³åºã㦠jackson-dataformat-xml ãæ©è½ããããã«ãã Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); return new MappingJackson2XmlHttpMessageConverter(builder.createXmlMapper(true).build().findAndRegisterModules()); }
testGetLibraryListByJackson2Xml ã®ãã¹ããå®è¡ããã¨æåãããã¨ã確èªã§ãã¾ããã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ããã¨ãä»åº¦ã¯ "BUILD SUCCESSFUL" ã®ã¡ãã»ã¼ã¸ãåºåããã¾ããã
å±¥æ´
2022/02/18
åççºè¡ã
Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( Spring Boot ã 2.5.5 â 2.5.9 ã¸ãGradle ã 7.2 â 7.4 ã¸ãã¼ã¸ã§ã³ã¢ãããã )
æ¦è¦
è¨äºä¸è¦§ã¯ãã¡ãã§ãã
Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( æ¦è¦ ) ã®ç¶ãã§ãã
- ä»åã®æé ã§ç¢ºèªã§ããã®ã¯ä»¥ä¸ã®å
容ã§ãã
- Spring Boot ã®ãã¼ã¸ã§ã³ã 2.5 ç³»ã®ææ°ãã¼ã¸ã§ã³ã§ãã 2.5.9 ã¸ãGradle ã®ãã¼ã¸ã§ã³ã 7.x ç³»ã®ææ°ãã¼ã¸ã§ã³ã§ãã 7.4 ã«ä¸ã㦠build ã§ãããã¨ã確èªãã¾ãã
- ä»åã¯åé¡ããªããã°ã©ã¤ãã©ãªã¯ãã¼ã¸ã§ã³ã¢ãããã¾ããã
åç §ãããµã¤ãã»æ¸ç±
ç®æ¬¡
- 2.6.x ãã©ã³ãã®ä½æ
- Spring Boot ã 2.5.5 â 2.5.9 ã«ãã¼ã¸ã§ã³ã¢ãããã
- Gradle ã 7.2 â 7.4 ã«ãã¼ã¸ã§ã³ã¢ãããã
æé
2.6.x ãã©ã³ãã®ä½æ
master ãã 2.6.x ãã©ã³ããã2.6.x ãã feature/138-issue ãã©ã³ããä½æãã¾ãã
Spring Boot ã 2.5.5 â 2.5.9 ã«ãã¼ã¸ã§ã³ã¢ãããã
build.gradle ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
buildscript { ext { group "ksbysample" version "2.5.9" } repositories { mavenCentral() maven { url "https://repo.spring.io/release/" } gradlePluginPortal() } dependencies { // for doma-codegen-plugin classpath "org.postgresql:postgresql:42.2.24" } } plugins { id "java" id "eclipse" id "idea" id "org.springframework.boot" version "2.5.9" id "io.spring.dependency-management" version "1.0.11.RELEASE" id "groovy" id "checkstyle" id "com.github.spotbugs" version "4.7.3" id "pmd" id "net.ltgt.errorprone" version "2.0.2" id "com.gorylenko.gradle-git-properties" version "2.3.1" id "org.seasar.doma.codegen" version "1.4.1" } ..........
- buildscript block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
version "2.5.5"
âversion "2.5.9"
- plugins block ã®ä»¥ä¸ã®ç¹ãå¤æ´ãã¾ãã
id "org.springframework.boot" version "2.5.5"
âid "org.springframework.boot" version "2.5.9"
Gradle Tool Window ã®å·¦ä¸ã«ãããRefresh All Gradle Projectsããã¿ã³ãã¯ãªãã¯ãã¦æ´æ°ãã¾ãã
Gradle ã 7.2 â 7.4 ã«ãã¼ã¸ã§ã³ã¢ãããã
build.gradle ã® wrapper ã¿ã¹ã¯ã®è¨è¿°ã以ä¸ã®ããã«å¤æ´ãã¾ãã
wrapper {
gradleVersion = "7.4"
distributionType = Wrapper.DistributionType.ALL
}
gradleVersion = "7.2"
âgradleVersion = "7.4"
ã«å¤æ´ãã¾ãã
ã³ãã³ãããã³ãããã gradlew wrapper --gradle-version=7.4
ãgradlew --version
ã³ãã³ããå®è¡ãã¾ãã
gradle/wrapper/gradle-wrapper.properties ã¯ä»¥ä¸ã®å 容ã«ãªãã¾ãã
distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists
.gradle ãã£ã¬ã¯ããªã®ä¸ã«ãã¼ã¸ã§ã³çªå·ã®ãã£ã¬ã¯ããªãããã®ã§ã7.2 ãåé¤ãã¾ãã
IntelliJ IDEA ãåèµ·åããå¾ãGradle Tool Window ã®å·¦ä¸ã«ãããRefresh All Gradle Projectsããã¿ã³ãã¯ãªãã¯ãã¦æ´æ°ãã¾ãã.gradle ãã£ã¬ã¯ããªã®ä¸ã« 7.4 ãã£ã¬ã¯ããªãä½æããã¦ãããã¨ã確èªãã¾ãã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã㨠"BUILD SUCCESSFUL" ã®ã¡ãã»ã¼ã¸ãåºåããã¾ããã
å±¥æ´
2022/02/13
åççºè¡ã
Spring Boot 2.5.x ã® Web ã¢ããªã 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã ( ãã®ï¼ )( æ¦è¦ )
æ¦è¦
è¨äºä¸è¦§ã¯ãã¡ãã§ãã
- ãSpring Boot ã§æ¸ç±ã®è²¸åºç¶æ³ç¢ºèªã»è²¸åºç³è«ãã Web ã¢ããªã±ã¼ã·ã§ã³ãä½ããã§ä½æãã Web ã¢ããªã±ã¼ã·ã§ã³ ( ksbysample-webapp-lending ) ã® Spring Boot ã®ãã¼ã¸ã§ã³ã 2.5.5 â 2.6.x ã¸ãã¼ã¸ã§ã³ã¢ãããã¾ãã
- é²ãæ¹ã¯ä»¥ä¸ã®æ¹éã¨ãã¾ãã
- Git ã®ãã©ã³ã㯠2.6.x ãä½æãã¦ããã¡ãã§ä½æ¥ãã¾ããSpring Boot ã®ãã¼ã¸ã§ã³ã¨åããã¾ãã
- Spring Boot ã®ãã¼ã¸ã§ã³ã 2.5 ç³»ã®ææ°ãã¼ã¸ã§ã³ã§ãã 2.5.9 ã¸ãGradle ã®ãã¼ã¸ã§ã³ã 7.x ç³»ã®ææ°ãã¼ã¸ã§ã³ã§ãã 7.4 ã«ä¸ã㦠build ã§ãããã¨ã確èªãã¾ãããã®æç¹ã§ã¯ã©ã¤ãã©ãªã¯ãã¼ã¸ã§ã³ã¢ãããã¾ããã
- Spring Boot ã®ãã¼ã¸ã§ã³ã 2.6.x ã«ãã¾ãã
- Spring Initializr 㧠2.6.x ã®ããã¸ã§ã¯ããä½æãã¦ãä¿®æ£ããæ¹ããããããªç¹ãããã°åæ ãã¾ãã
- ã©ã¤ãã©ãªã¯ææ°ãã¼ã¸ã§ã³ã«ã¢ãããã¼ããã¾ãããã ãããã®æç¹ã§ã¯ checkstyle, spotbugs, pmd, Error Prone ã®ãã¼ã¸ã§ã³ã¯ä¸ãã¾ããã
- ããã¸ã§ã¯ãã build ãç´ãã¦ã¨ã©ã¼ãåºãç¹ãããã°ä¿®æ£ããã¾ãã¯ããã¾ã§ã§åãããã«ãã¾ãã
- ãã®å¾ã§ 2.6 ç³»ã§ã¯ããæ¸ãã¹ãã¨ããç¹ãããã確èªããå¤æ´ããæ¹ãããã¨ãããå¤æ´ãã¾ãã
- checkstyle, spotbugs, pmd, Error Prone ãï¼ã¤ãã¤ææ°ãã¼ã¸ã§ã³ã«ä¸ãã¾ããå¤æ´ããæ¹ãããã¨ãããããã°å¤æ´ãã¾ãã
- docker-compose ã§ä½¿ç¨ãã¦ãã image ãææ°ãã¼ã¸ã§ã³ã«ä¸ãã¾ãã
2.6 ã® Release Notes ã¯ãã¡ãã§ãã
Spring Boot 2.6 Release Notes
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.6-Release-Notes
å±¥æ´
2022/02/13
åççºè¡ã
Eclipse Temurin ã 17.0.1+12 â 17.0.2+8 ã¸ãIntelliJ IDEA ã 2021.3.1 â 2021.3.2 ã¸ãGit for Windows ã 2.35.0 â 2.35.1.2 ã¸ãã¼ã¸ã§ã³ã¢ãã
Eclipse Temurin ã 17.0.1+12 â 17.0.2+8 ã¸ãã¼ã¸ã§ã³ã¢ãããã
â»ksbysample-webapp-lending ããã¸ã§ã¯ããéããç¶æ ã§ãã¼ã¸ã§ã³ã¢ãããã¦ãã¾ãã
https://adoptium.net/index.html?variant=openjdk17&jvmVariant=hotspot ãã OpenJDK17U-jdk_x64_windows_hotspot_17.0.2_8.msi ããã¦ã³ãã¼ããã¾ãã
ã¤ã³ã¹ãã¼ã«æã«åé¤ããããããããªãã®ã§ D:\Java\jdk-17.0.1.12-hotspot â D:\Java\jdk-17.0.1.12-hotspotx ã«ãªãã¼ã ãã¾ãã
ã¤ã³ã¹ãã¼ã©ã¼ãå®è¡ã㦠D:\Java\jdk-17.0.2.8-hotspot ã¸ã¤ã³ã¹ãã¼ã«ããå¾ãç°å¢å¤æ° JAVA_HOME ã®ãã¹ã D:\Java\jdk-17.0.2.8-hotspot ã¸å¤æ´ãã¾ãã
ã³ãã³ãããã³ãããã
java -version
ãå®è¡ãã17.0.2
ã«å¤æ´ããã¦ãããã¨ã確èªãã¾ããD:\Java\jdk-17.0.1.12-hotspotx â D:\Java\jdk-17.0.1.12-hotspot ã«æ»ãã¾ãã
IntelliJ IDEA ãåèµ·åãã¾ãã
ksbysample-webapp-lending ããã¸ã§ã¯ãã使ç¨ãã JDK ã 17.0.2.8 ã«å¤æ´ãã¾ãã
IntelliJ IDEA ã®ã¡ã¤ã³ç»é¢ãéããããã¡ãã¥ã¼ãããFileã-ãProject Structure...ããé¸æãã¾ãã
ãProject Structureããã¤ã¢ãã°ã表示ããã¾ãããProject SDKã㧠D:\Java\jdk-17.0.2.8-hotspot ãé¸æãã¾ãã
ãProject SDKãã®ãEditããã¿ã³ãã¯ãªãã¯ãã¾ãã
ãPlatform Settingsã-ãSDKsãã®ç»é¢ã«åãæ¿ããã¾ããä¸å¤®ã®ãªã¹ãããã17.0.1.12ããé¸æããå¾ããªã¹ãã®ä¸ã®ãï¼ããã¿ã³ãã¯ãªãã¯ãã¦åé¤ãã¾ãã
ä¸å¤®ã®ãªã¹ããããtemurin-17ããé¸æããå¾ã"temurin-17" â "17.0.2.8" ã¸å¤æ´ãã¾ãã
ãOKããã¿ã³ãã¯ãªãã¯ãã¦ãProject Structure for New Projectsããã¤ã¢ãã°ãéãã¾ãã
ã¡ã¤ã³ç»é¢ã«æ»ãã¨ç»é¢å³ä¸ã«ãIndexing...ãã®è¡¨ç¤ºãåºãã®ã§ãçµäºããã¾ã§å¾ ã¡ã¾ãã
Gradle Tool Window ã®å·¦ä¸ã«ãããRefresh All Gradle Projectsããã¿ã³ãã¯ãªãã¯ãã¦æ´æ°ãã¾ãã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã¦ã"BUILD SUCCESSFUL" ã®ã¡ãã»ã¼ã¸ãåºåããããã¨ã確èªãã¾ãã
Project Tool Window 㧠src/test ã§ã³ã³ããã¹ãã¡ãã¥ã¼ã表示ãã¦ãMore Run/Debugã-ãRun 'All Tests' with Coverageããé¸æãããã¹ããå ¨ã¦æåãããã¨ã確èªãã¾ãã
ç¹ã«åé¡ã¯çºçãã¾ããã§ãããEclipse Temurin 17.0.2+8 ã§éçºãé²ãã¾ãã
IntelliJ IDEA ã 2021.3.1 â 2021.3.2 ã¸ãã¼ã¸ã§ã³ã¢ãããã
IntelliJ IDEA ã® 2021.3.2 ããªãªã¼ã¹ããã¦ããã®ã§ãã¼ã¸ã§ã³ã¢ãããã¾ãã
- IntelliJ IDEA 2021.3.2 is Available!
https://blog.jetbrains.com/idea/2022/01/intellij-idea-2021-3-2/
â»ksbysample-webapp-lending ããã¸ã§ã¯ããéããç¶æ ã§ãã¼ã¸ã§ã³ã¢ãããã¦ãã¾ãã
IntelliJ IDEA ã®ã¡ã¤ã³ã¡ãã¥ã¼ãããHelpã-ãCheck for Updates...ããé¸æãã¾ãã
ãIntelliJ IDEA and Plugin Updatesããã¤ã¢ãã°ã表示ããã¾ããå³ä¸ã«ãUpdate and Restartããã¿ã³ã表示ããã¦ãã¾ãã®ã§ããUpdate and Restartããã¿ã³ãã¯ãªãã¯ãã¾ãã
Plugin ã® update ã表示ããã¾ããããã®ã¾ã¾ãUpdateããã¿ã³ãã¯ãªãã¯ãã¾ãã
Patch ããã¦ã³ãã¼ããã㦠IntelliJ IDEA ãåèµ·åãã¾ãã
IntelliJ IDEA ãèµ·åããã¨ç»é¢ä¸é¨ã«ãIndexingãã®ã¡ãã»ã¼ã¸ã表示ããã¾ãã®ã§ãçµäºããã¾ã§å¾ æ©ãã¾ãã
IntelliJ IDEA ã®ã¡ã¤ã³ã¡ãã¥ã¼ãããHelpã-ãAboutããé¸æãã2021.3.2 ã¸ãã¼ã¸ã§ã³ã¢ããããã¦ãããã¨ã確èªãã¾ãã
ãã¼ã¸ã§ã³ã¢ããå¾ ToolWindow Colorful Icons ã Plugin Error ã¨ãªãã¾ããã
Marketplace ã§æ¤ç´¢ãã㨠Extra ToolWindow Colorful Icons ãã¤ã³ã¹ãã¼ã«å¯è½ãªã®ã§ãToolWindow Colorful Icons ãã¢ã³ã¤ã³ã¹ãã¼ã«ã㦠Extra ToolWindow Colorful Icons ãã¤ã³ã¹ãã¼ã«ãã¾ãã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã¦ã"BUILD SUCCESSFUL" ã®ã¡ãã»ã¼ã¸ãåºåããããã¨ã確èªãã¾ãã
Project Tool Window 㧠src/test ã§ã³ã³ããã¹ãã¡ãã¥ã¼ã表示ãã¦ãMore Run/Debugã-ãRun 'All Tests' with Coverageããé¸æãããã¹ããå ¨ã¦æåãããã¨ã確èªãã¾ãã
Git for Windows ã 2.35.0 â 2.35.1.2 ã¸ãã¼ã¸ã§ã³ã¢ãããã
Git for Windows ã® 2.35.1.2 ããªãªã¼ã¹ããã¦ããã®ã§ãã¼ã¸ã§ã³ã¢ãããã¾ãã
https://gitforwindows.org/ ã®ãDownloadããã¿ã³ãã¯ãªãã¯ã㦠Git-2.35.1.2-64-bit.exe ããã¦ã³ãã¼ããã¾ãã
Git-2.35.1.2-64-bit.exe ãå®è¡ãã¾ãã
ãGit 2.35.1.2 Setupããã¤ã¢ãã°ã表示ããã¾ããã¤ã³ã¹ãã¼ã©ã¼ã®ç»é¢ãä¸éãè¦ããã®ã§ãOnly show new optionsãã®ãã§ãã¯ãå¤ãã¦ãã [Next >] ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãSelect Componentsãç»é¢ã表示ããã¾ãããGit LFS(Large File Support)ãã ããã§ãã¯ããç¶æ 㧠[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing the default editor used by Gitãç»é¢ã表示ããã¾ãããUse Vim (the ubiquitous text editor) as Git's default editorããé¸æãããç¶æ 㧠[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãAdjusting the name of the initial branch in new repositoriesãç»é¢ã表示ããã¾ãããLet Git decideããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãAdjusting your PATH environmentãç»é¢ã表示ããã¾ããä¸å¤®ã®ãGit from the command line and also from 3rd-party softwareããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing the SSH executableãç»é¢ã表示ããã¾ãããUse bundled OpenSSLããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing HTTPS transport backendãç»é¢ã表示ããã¾ãããUse the OpenSSL libraryããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring the line ending conversionsãç»é¢ã表示ããã¾ããä¸çªä¸ã®ãCheckout Windows-style, commit Unix-style line endingsããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring the terminal emulator to use with Git Bashãç»é¢ã表示ããã¾ãããUse Windows'default console windowããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoose the default behavior of
git pull
ãç»é¢ã表示ããã¾ãããDefault (fast-forward or merge)ããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãããChoose a credential helperãç»é¢ã表示ããã¾ãããGit Credential Managerããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring extra optionsãç»é¢ã表示ããã¾ãããEnable file system cachingãã ãããã§ãã¯ããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring experimental optionsãç»é¢ã表示ããã¾ããä½ããã§ãã¯ããã« [Install]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ã¤ã³ã¹ãã¼ã«ãå®äºããã¨ãCompleting the Git Setup Wizardãã®ã¡ãã»ã¼ã¸ã表示ãããç»é¢ã表示ããã¾ããä¸å¤®ã®ãView Release Notesãã®ãã§ãã¯ãå¤ããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¦ã¤ã³ã¹ãã¼ã©ã¼ãçµäºãã¾ãã
ã³ãã³ãããã³ãããèµ·åãã¦
git --version
ãå®è¡ããgit ã®ãã¼ã¸ã§ã³ãgit version 2.35.1.windows.2
ã«ãªã£ã¦ãããã¨ã確èªãã¾ããç¹ã«åé¡ã¯ãªãããã§ãã®ã§ã2.35.1.2 ã§ä½æ¥ãé²ãããã¨æãã¾ãã
IntelliJ IDEA ã 2021.2.4 â 2021.3.1 ã¸ãGit for Windows ã 2.34.1 â 2.35.0 ã¸ãã¼ã¸ã§ã³ã¢ãã
IntelliJ IDEA ã 2021.2.4 â 2021.3.1 ã¸ãã¼ã¸ã§ã³ã¢ãããã
IntelliJ IDEA ã® 2021.3.1 ããªãªã¼ã¹ããã¦ããã®ã§ãã¼ã¸ã§ã³ã¢ãããã¾ãã
- IntelliJ IDEA 2021.3 Is Out!
https://blog.jetbrains.com/idea/2021/11/intellij-idea-2021-3/ - IntelliJ IDEA 2021.3.1 Is Here!
https://blog.jetbrains.com/idea/2021/12/intellij-idea-2021-3-1-is-here/
â»ksbysample-webapp-lending ããã¸ã§ã¯ããéããç¶æ ã§ãã¼ã¸ã§ã³ã¢ãããã¦ãã¾ãã
IntelliJ IDEA ã®ã¡ã¤ã³ã¡ãã¥ã¼ãããHelpã-ãCheck for Updates...ããé¸æãã¾ãã
ãIntelliJ IDEA and Plugin Updatesããã¤ã¢ãã°ã表示ããã¾ããå³ä¸ã«ãUpdate and Restartããã¿ã³ã表示ããã¦ãã¾ãã®ã§ããUpdate and Restartããã¿ã³ãã¯ãªãã¯ãã¾ãã
Plugin ã® update ã表示ããã¾ããããã®ã¾ã¾ãUpdateããã¿ã³ãã¯ãªãã¯ãã¾ãã
Patch ããã¦ã³ãã¼ããã㦠IntelliJ IDEA ãåèµ·åãã¾ãã
IntelliJ IDEA ãèµ·åããã¨ç»é¢ä¸é¨ã«ãIndexingãã®ã¡ãã»ã¼ã¸ã表示ããã¾ãã®ã§ãçµäºããã¾ã§å¾ æ©ãã¾ãã
IntelliJ IDEA ã®ã¡ã¤ã³ã¡ãã¥ã¼ãããHelpã-ãAboutããé¸æãã2021.3.1 ã¸ãã¼ã¸ã§ã³ã¢ããããã¦ãããã¨ã確èªãã¾ãã
clean ã¿ã¹ã¯å®è¡ â Rebuild Project å®è¡ â build ã¿ã¹ã¯ãå®è¡ãã¦ã"BUILD SUCCESSFUL" ã®ã¡ãã»ã¼ã¸ãåºåããããã¨ã確èªãã¾ãã
Project Tool Window 㧠src/test ã§ã³ã³ããã¹ãã¡ãã¥ã¼ã表示ãã¦ãMore Run/Debugã-ãRun 'All Tests' with Coverageããé¸æãããã¹ããå ¨ã¦æåãããã¨ã確èªãã¾ãã
æå¾ã«ã¡ã¸ã£ã¼ãã¼ã¸ã§ã³ã¢ãããªã®ã§ä»¥åã®ãã¼ã¸ã§ã³ã® C:\Users\root\AppData\Local\JetBrains\IntelliJIdea2021.2 ãåé¤ãã¾ãã
Git for Windows ã 2.34.1 â 2.35.0 ã¸ãã¼ã¸ã§ã³ã¢ãããã
Git for Windows ã® 2.35.0 ããªãªã¼ã¹ããã¦ããã®ã§ãã¼ã¸ã§ã³ã¢ãããã¾ãã
https://gitforwindows.org/ ã®ãDownloadããã¿ã³ãã¯ãªãã¯ã㦠Git-2.35.0-64-bit.exe ããã¦ã³ãã¼ããã¾ãã
Git-2.35.0-64-bit.exe ãå®è¡ãã¾ãã
ãGit 2.35.0 Setupããã¤ã¢ãã°ã表示ããã¾ããã¤ã³ã¹ãã¼ã©ã¼ã®ç»é¢ãä¸éãè¦ããã®ã§ãOnly show new optionsãã®ãã§ãã¯ãå¤ãã¦ãã [Next >] ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãSelect Componentsãç»é¢ã表示ããã¾ãããGit LFS(Large File Support)ãã ããã§ãã¯ããç¶æ 㧠[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing the default editor used by Gitãç»é¢ã表示ããã¾ãããUse Vim (the ubiquitous text editor) as Git's default editorããé¸æãããç¶æ 㧠[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãAdjusting the name of the initial branch in new repositoriesãç»é¢ã表示ããã¾ãããLet Git decideããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãAdjusting your PATH environmentãç»é¢ã表示ããã¾ããä¸å¤®ã®ãGit from the command line and also from 3rd-party softwareããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing the SSH executableãç»é¢ã表示ããã¾ãããUse bundled OpenSSLããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoosing HTTPS transport backendãç»é¢ã表示ããã¾ãããUse the OpenSSL libraryããé¸æããã¦ãããã¨ã確èªå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring the line ending conversionsãç»é¢ã表示ããã¾ããä¸çªä¸ã®ãCheckout Windows-style, commit Unix-style line endingsããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring the terminal emulator to use with Git Bashãç»é¢ã表示ããã¾ãããUse Windows'default console windowããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãChoose the default behavior of
git pull
ãç»é¢ã表示ããã¾ãããDefault (fast-forward or merge)ããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãããChoose a credential helperãç»é¢ã表示ããã¾ãããGit Credential Managerããé¸æããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring extra optionsãç»é¢ã表示ããã¾ãããEnable file system cachingãã ãããã§ãã¯ããã¦ãããã¨ã確èªããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ãConfiguring experimental optionsãç»é¢ã表示ããã¾ããä½ããã§ãã¯ããã« [Install]ãã¿ã³ãã¯ãªãã¯ãã¾ãã
ã¤ã³ã¹ãã¼ã«ãå®äºããã¨ãCompleting the Git Setup Wizardãã®ã¡ãã»ã¼ã¸ã表示ãããç»é¢ã表示ããã¾ããä¸å¤®ã®ãView Release Notesãã®ãã§ãã¯ãå¤ããå¾ã[Next >]ãã¿ã³ãã¯ãªãã¯ãã¦ã¤ã³ã¹ãã¼ã©ã¼ãçµäºãã¾ãã
ã³ãã³ãããã³ãããèµ·åãã¦
git --version
ãå®è¡ããgit ã®ãã¼ã¸ã§ã³ãgit version 2.35.0.windows.1
ã«ãªã£ã¦ãããã¨ã確èªãã¾ããç¹ã«åé¡ã¯ãªãããã§ãã®ã§ã2.35.0 ã§ä½æ¥ãé²ãããã¨æãã¾ãã