{"id":142,"date":"2023-01-19T21:09:19","date_gmt":"2023-01-19T12:09:19","guid":{"rendered":"https:\/\/hirabay.net\/?p=142"},"modified":"2023-03-17T00:15:39","modified_gmt":"2023-03-16T15:15:39","slug":"springboot-2-7-to-3-0-%e8%87%aa%e5%8b%95%e5%8c%96%ef%bc%88gradle%e7%89%88%ef%bc%89","status":"publish","type":"post","link":"https:\/\/hirabay.net\/?p=142","title":{"rendered":"SpringBoot 2.7 to 3.0 \u81ea\u52d5\u5316\uff08Gradle\u7248\uff09"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">SpringBoot 2.7\u304b\u30893.0\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u60c5\u5831\u3092\u4ee5\u4e0b\u306e\u8a18\u4e8b\u3067\u307e\u3068\u3081\u307e\u3057\u305f\u304c\u3001<br>\u5b9f\u696d\u52d9\u3067\u306f\u5c11\u3057\u3067\u3082\u624b\u9593\u3092\u7701\u304d\u305f\u3044\u3067\u3059\u3088\u306d\u2026\uff01<\/p>\n\n\n<a class=\"linkto table\" href=\"https:\/\/hirabay.net\/?p=61\"><span class=\"tbcell tbimg\"><img loading=\"lazy\" decoding=\"async\" width=\"160\" height=\"160\" src=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/SpringBoot-160x160.png\" class=\"attachment-thumb-160 size-thumb-160 wp-post-image\" alt=\"\" srcset=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/SpringBoot-160x160.png 160w, https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/SpringBoot-150x150.png 150w\" sizes=\"auto, (max-width: 160px) 100vw, 160px\"><\/span><span class=\"tbcell tbtext\"><time class=\"pubdate sng-link-time dfont\" itemprop=\"datePublished\" datetime=\"2023-01-17\">2023\u5e741\u670817\u65e5<\/time>SpringBoot 2.7 to 3.0 \u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u307e\u3068\u3081<\/span><\/a>\n\n\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a18\u4e8b\u3067\u306fGradle\u3092\u5bfe\u8c61\u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u306e\u81ea\u52d5\u5316\u65b9\u6cd5\u3092\u307e\u3068\u3081\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"toc\"><br \/>\n<b>Warning<\/b>:  Undefined array key \"is_admin\" in <b>\/home\/c4179872\/public_html\/hirabay.net\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>110<\/b><br \/>\n<br \/>\n<b>Warning<\/b>:  Undefined array key \"is_category_top\" in <b>\/home\/c4179872\/public_html\/hirabay.net\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>115<\/b><br \/>\n<br \/>\n<b>Warning<\/b>:  Undefined array key \"is_top\" in <b>\/home\/c4179872\/public_html\/hirabay.net\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>122<\/b><br \/>\n    <div id=\"toc_container\" class=\"sgb-toc--bullets js-smooth-scroll\">\n      <p class=\"toc_title\">\u76ee\u6b21 <\/p>\n      <ul class=\"toc_list\">\n  <li class=\"first\">\n    <a href=\"#i-0\">\u81ea\u52d5\u3067\u3067\u304d\u308b\u3053\u3068<\/a>\n  <\/li>\n  <li>\n    <a href=\"#i-1\">\u66f4\u65b0\u624b\u9806<\/a>\n    <ul class=\"menu_level_1\">\n      <li class=\"first\">\n        <a href=\"#i-2\">1. \u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210<\/a>\n      <\/li>\n      <li>\n        <a href=\"#i-3\">2. \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306bOpenRewrite\u3092\u5c0e\u5165<\/a>\n      <\/li>\n      <li>\n        <a href=\"#i-4\">3. \u30c6\u30b9\u30c8\u5b9f\u884c<\/a>\n      <\/li>\n      <li>\n        <a href=\"#i-5\">4. \u5b9f\u884c<\/a>\n      <\/li>\n      <li class=\"last\">\n        <a href=\"#i-6\">5. Completed !<\/a>\n      <\/li>\n    <\/ul>\n  <\/li>\n  <li class=\"last\">\n    <a href=\"#i-7\">\u304a\u307e\u3051 ~shepherd~<\/a>\n  <\/li>\n<\/ul>\n\n      \n    <\/div><\/div><h2 class=\"wp-block-heading\" id=\"i-0\">\u81ea\u52d5\u3067\u3067\u304d\u308b\u3053\u3068<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u3053\u306e\u8a18\u4e8b\u306e\u624b\u9806\u3092\u5b9f\u65bd\u3059\u308b\u3053\u3068\u3067\u81ea\u52d5\u7684\u306b\u66f4\u65b0\u3067\u304d\u308b\u3053\u3068\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\u3002<\/p>\n\n\n<p><\/p><div class=\"arconix-list\" data-arconix-icon=\"fa-chevron-circle-right\" data-arconix-color=\"black\">\n<ul>\n<li>SpringBoot\u95a2\u9023\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u66f4\u65b0<\/li>\n<li>Java\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u66f4\u65b0<\/li>\n<li>\u4f9d\u5b58\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u66f4\u65b0<\/li>\n<li>javax \u2192 jakarta\u306e\u79fb\u884c<\/li>\n<li>spring.factories\u306e\u79fb\u884c<\/li>\n<li>\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u79fb\u884c<\/li>\n<\/ul>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-1\">\u66f4\u65b0\u624b\u9806<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">OpenRewrite\u3092\u4f7f\u7528\u3057\u3066\u81ea\u52d5\u66f4\u65b0\u3092\u884c\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u25bcOpenRewrite\u306b\u3064\u3044\u3066\u3082\u3063\u3068\u77e5\u308a\u305f\u3044\u65b9\u306f\u3053\u3061\u3089<\/p>\n\n\n<a class=\"linkto table\" href=\"https:\/\/hirabay.net\/?p=292\"><span class=\"tbcell tbimg\"><img loading=\"lazy\" decoding=\"async\" width=\"160\" height=\"160\" src=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/openrewrite-160x160.png\" class=\"attachment-thumb-160 size-thumb-160 wp-post-image\" alt=\"\" srcset=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/openrewrite-160x160.png 160w, https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/openrewrite-150x150.png 150w\" sizes=\"auto, (max-width: 160px) 100vw, 160px\"><\/span><span class=\"tbcell tbtext\"><time class=\"pubdate sng-link-time dfont\" itemprop=\"datePublished\" datetime=\"2023-01-30\">2023\u5e741\u670830\u65e5<\/time>\u3010OpenRewrite\u3011\u30b3\u30fc\u30c9\u3092\u81ea\u52d5\u3067\u4e00\u62ec\u5909\u66f4<\/span><\/a>\n\n\n<h3 class=\"wp-block-heading\" id=\"i-2\">1. \u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u76f4\u4e0b\u306b <code>rewrite.yml<\/code>\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-yaml\" data-file=\"rewrite.yml\" data-lang=\"Yaml\"><code>---\ntype: specs.openrewrite.org\/v1beta\/recipe\nname: custom.SpringBootMigration\ndisplayName: springboot migration to 3.0 from 2.7\nrecipeList:\n  # \u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u66f4\u65b0\n  - org.openrewrite.gradle.plugins.UpgradePluginVersion:\n      pluginIdPattern: org.springframework.boot\n      newVersion: \"3.0.0\"\n  - org.openrewrite.gradle.plugins.UpgradePluginVersion:\n      pluginIdPattern: io.spring.dependency-management\n      newVersion: \"1.1.0\"\n  # Jara\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u66f4\u65b0\n  - org.openrewrite.gradle.ChangeJavaCompatibility:\n      newVersion: \"17\"\n      compatibilityType: \"source\"\n  - org.openrewrite.gradle.ChangeJavaCompatibility:\n      newVersion: \"17\"\n      compatibilityType: \"target\"\n  # \u4f9d\u5b58\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u66f4\u65b0\uff08\u66f4\u65b0\u306b\u5fc5\u8981\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3054\u3068\u306b\u5b9a\u7fa9\u304c\u5fc5\u8981\uff09\n  - org.openrewrite.gradle.ChangeDependencyVersion:\n      groupId: org.mybatis.spring.boot\n      artifactId: mybatis-spring-boot-starter\n      newVersion: 3.0.0\n  # javax \u2192 jakarta\u306e\u66f4\u65b0\n  - org.openrewrite.java.migrate.jakarta.JavaxMigrationToJakarta\n  # spring.factories\u306e\u79fb\u884c\n  - org.openrewrite.java.spring.boot2.MoveAutoConfigurationToImportsFile\n  # \u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u79fb\u884c\n  - org.openrewrite.java.spring.boot3.SpringBootProperties_3_0_0<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-3\">2. \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306bOpenRewrite\u3092\u5c0e\u5165<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">build.gradle\u306b\u5909\u66f4\u3092\u52a0\u3048\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-groovy\" data-file=\"build.gradle\" data-lang=\"Groovy\"><code>plugins {\n    ...\n    \/\/ OpenRewrite\u30d7\u30e9\u30b0\u30a4\u30f3\u3092\u8ffd\u52a0\u3059\u308b\n    id(\"org.openrewrite.rewrite\") version(\"5.32.0\")\n}\n\n...\n\nrepositories {\n    \/\/ mavenCentral\u304c\u5fc5\u8981\n    mavenCentral()\n}\n\ndependencies {\n    ...\n    \/\/ \u66f8\u63db\u306b\u5fc5\u8981\u306a\u4f9d\u5b58\u3092\u8ffd\u52a0\n    rewrite(\"org.openrewrite.recipe:rewrite-spring:4.30.0\")\n    rewrite(\"org.openrewrite:rewrite-gradle:7.33.0\")\n}\n\n\/\/ \u5b9f\u884c\u3059\u308b\u30ec\u30b7\u30d4\u3092\u5b9a\u7fa9\nrewrite {\n    \/\/ \u5148\u307b\u3069\u5b9a\u7fa9\u3057\u305f\u72ec\u81ea\u306e\u30ec\u30b7\u30d4\n    activeRecipe('custom.SpringBootMigration')\n}<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-4\">3. \u30c6\u30b9\u30c8\u5b9f\u884c<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">rewriteDryRun\u30bf\u30b9\u30af\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-bash\" data-lang=\"Bash\"><code>.\/gradlew rewriteDryRun<\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><code>build\/reports\/rewrite\/rewrite.patch<\/code>\u306b\u5909\u66f4\u5185\u5bb9\u304c\u51fa\u529b\u3055\u308c\u308b\u306e\u3067\u3001<br>\u5185\u5bb9\u306b\u554f\u984c\u304c\u306a\u3044\u304b\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u203b\u60f3\u5b9a\u5916\u306e\u5909\u66f4\u304c\u3042\u308c\u3070\u3053\u3053\u3067\u7acb\u3061\u6b62\u307e\u3063\u3066\u4e00\u90e8\u624b\u52d5\u66f4\u65b0\u306b\u5207\u308a\u66ff\u3048\u308b\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-5\">4. \u5b9f\u884c<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">rewriteRun\u30bf\u30b9\u30af\u3092\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-bash\" data-lang=\"Bash\"><code>.\/gradlew rewriteRun<\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-6\">5. Completed !<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u3053\u308c\u3067\u81ea\u52d5\u66f4\u65b0\u306e\u624b\u9806\u306f\u7d42\u308f\u308a\u3067\u3059\uff01<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u300c\u3053\u306e\u624b\u9806\u3092\u3084\u308c\u3070SpringBoot3.0\u3078\u306e\u66f4\u65b0\u304c\u3059\u3079\u3066\u81ea\u52d5\u5316\u3055\u308c\u308b\u300d\u3068\u3044\u3046\u3053\u3068\u3067\u306f\u306a\u3044\u306e\u3067<br>\u624b\u52d5\u3067\u306e\u30c1\u30a7\u30c3\u30af\u3082\u3057\u3066\u304a\u304d\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-7\">\u304a\u307e\u3051 ~shepherd~<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">shepherd\u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3046\u3068github\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u306b\u4e00\u6589\u306bPR\u3092\u3042\u3052\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n<a class=\"linkto table\" href=\"https:\/\/hirabay.net\/?p=554\"><span class=\"tbcell tbimg\"><img loading=\"lazy\" decoding=\"async\" width=\"160\" height=\"160\" src=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/03\/Gradle-4-160x160.png\" class=\"attachment-thumb-160 size-thumb-160 wp-post-image\" alt=\"\" srcset=\"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/03\/Gradle-4-160x160.png 160w, https:\/\/hirabay.net\/wp-content\/uploads\/2023\/03\/Gradle-4-150x150.png 150w\" sizes=\"auto, (max-width: 160px) 100vw, 160px\"><\/span><span class=\"tbcell tbtext\"><time class=\"pubdate sng-link-time dfont\" itemprop=\"datePublished\" datetime=\"2023-03-12\">2023\u5e743\u670812\u65e5<\/time>\u3010\u30ea\u30dd\u30b8\u30c8\u30ea\u7ba1\u7406\u3092\u697d\u306b\uff01\u3011shepherd\u3092\u4f7f\u3063\u3066\u307f\u305f<\/span><\/a>\n\n\n<p class=\"wp-block-paragraph\">\u30b9\u30af\u30ea\u30d7\u30c8\u3082OS\u30b3\u30de\u30f3\u30c9\u3067\u81ea\u7531\u306b\u304b\u3051\u308b\u306e\u3067OpenRewrite\u3067\u5bfe\u5fdc\u3057\u304d\u308c\u306a\u3044\u90e8\u5206\u3082\u5bfe\u5fdc\u3067\u304d\u307e\u3059\uff01<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u4ee5\u4e0b\u3001\u81ea\u5206\u306e\u77e5\u3063\u3066\u3044\u308b\u9650\u308a\u3092\u3059\u3079\u3066\u81ea\u52d5\u3067\u66f4\u65b0\u3059\u308b\u305f\u3081\u306e\u5b9a\u7fa9\u30d5\u30a1\u30a4\u30eb\u3067\u3059\uff01<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism undefined-numbers lang-yaml\" data-file=\"shepherd.yml\" data-lang=\"Yaml\"><code>id: migrate\/springboot-3.0\ntitle: \"migrate springboot to 3.0 from 2.7.\"\nadapter:\n  type: github\n  search_type: &lt;repositories or code&gt;\n  search_query: &lt;\u9069\u5b9c\u8a2d\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044&gt;\nhooks:\n  should_migrate:\n    - find . -name build.gradle | xargs -I{} grep -e \"org.springframework.boot.*version.*2\\.7\\.\" {}\n  apply:\n    # gradle version upgrade\n    - |\n      # \u975e\u63a8\u5968\u306a\u8a18\u8ff0\u3092\u691c\u77e5\n      .\/gradlew help --warning-mode=fail\n      if [ $? -ne 0 ]; then\n        exit 1\n      fi\n      # gradle\u306eversion\u3092upgrade\n      .\/gradlew wrapper --gradle-version 7.6.1\n    # prepare OpenRewrite\n    - |\n      # \u5909\u6570\u5b9a\u7fa9\n      build_gradle_file=.\/build.gradle\n      sed_cmd=gsed\n      \n      # \u30d5\u30a1\u30a4\u30eb\u8ffd\u52a0\n      rm rewrite.yml\n      curl 'https:\/\/raw.githubusercontent.com\/rhirabay\/my-projects\/main\/shepherd\/migrations\/springboot\/3.0\/gradle\/rewrite.yml' -o rewrite.yml\n      # \u30d7\u30e9\u30b0\u30a4\u30f3\u8ffd\u52a0\n      grep 'org.openrewrite.rewrite' ${build_gradle_file}\n      if [ $? -ne 0 ]; then\n        plugin_block_start=$(${sed_cmd} -n '\/plugins {\/=' ${build_gradle_file})\n        plugin_block_end=$(${sed_cmd} -n '\/}\/=' ${build_gradle_file} | awk '{ if ($0 &gt;= '$plugin_block_start') print $0 }' | head -1)\n        ${sed_cmd} -i -e \"${plugin_block_end}i \\ \\ \\ \\ id('org.openrewrite.rewrite') version('5.32.0')\" ${build_gradle_file}\n      fi\n      # \u4f9d\u5b58\u3092\u8ffd\u52a0\n      dependencies_block_start=$(${sed_cmd} -n '\/dependencies {\/=' ${build_gradle_file})\n      dependencies_block_end=$(${sed_cmd} -n '\/}\/=' ${build_gradle_file} | awk '{ if ($0 &gt;= '$dependencies_block_start') print $0 }' | head -1)      \n      grep 'rewrite-spring' ${build_gradle_file}\n      if [ $? -ne 0 ]; then\n        ${sed_cmd} -i -e \"${dependencies_block_end}i \\ \\ \\ \\ rewrite('org.openrewrite.recipe:rewrite-spring:+')\" ${build_gradle_file}\n        dependencies_block_end=$((${dependencies_block_end} + 1))\n      fi\n      grep 'rewrite-gradle' ${build_gradle_file}\n      if [ $? -ne 0 ]; then\n        ${sed_cmd} -i -e \"${dependencies_block_end}i \\ \\ \\ \\ rewrite('org.openrewrite:rewrite-gradle:+')\" ${build_gradle_file}\n        dependencies_block_end=$((${dependencies_block_end} + 1))\n      fi\n      # rewrite\u30d6\u30ed\u30c3\u30af\u3092\u8ffd\u52a0\n      grep 'rewrite {' ${build_gradle_file}\n      if [ $? -ne 0 ]; then\n        echo '' &gt;&gt; ${build_gradle_file}\n        echo 'rewrite {' &gt;&gt; ${build_gradle_file}\n        echo '}' &gt;&gt; ${build_gradle_file}\n      fi\n      rewrite_block_start=$(sed -n '\/rewrite {\/=' ${build_gradle_file})\n      rewrite_block_end=$(sed -n '\/}\/=' ${build_gradle_file} | awk '{ if ($0 &gt;= '$rewrite_block_start') print $0 }' | head -1)\n      if [ ! $(grep 'springboot.migration2.7to3.0' ${build_gradle_file}) ]; then\n        ${sed_cmd} -i -e \"${rewrite_block_end}i \\ \\ \\ \\ activeRecipe('springboot.migration2.7to3.0')\" ${build_gradle_file}\n      fi\n    # Rewrite\u5b9f\u884c\n    - .\/gradlew rewriteRun\n    # SpringCloud\u306eversion\u5909\u66f4\n    - |\n      # \u5909\u6570\u5b9a\u7fa9\n      build_gradle_file=\".\/build.gradle\"\n      spring_cloud_version=2022.0.1\n      sed_cmd=gsed\n      \n      grep -e \"set(.springCloudVersion.\" ${build_gradle_file}\n      if [ $? -eq 0 ]; then\n        # \u884c\u3092\u7279\u5b9a\n        spring_cloud_version_line=$(${sed_cmd} -n -e '\/set(.springCloudVersion.\/=' ${build_gradle_file})\n        ${sed_cmd} -i \"${spring_cloud_version_line}c \\ \\ \\ \\ set('springCloudVersion', '${spring_cloud_version}')\" ${build_gradle_file}\n      fi\n    # sleuth\u3092micrometer\u306b\u5207\u308a\u66ff\u3048\n    - |\n      # \u5909\u6570\u5b9a\u7fa9\n      build_gradle_file=\".\/build.gradle\"\n      sed_cmd=gsed\n      \n      grep \"spring-cloud-starter-sleuth\" ${build_gradle_file}\n      if [ $? -eq 0 ]; then\n        ${sed_cmd} -i -e \"\/spring-cloud-starter-sleuth\/a \\ \\ \\ \\ implementation\\ 'io.micrometer:micrometer-tracing-bridge-brave'\" ${build_gradle_file}\n        ${sed_cmd} -i -e \"\/spring-cloud-starter-sleuth\/a \\ \\ \\ \\ implementation\\ 'io.micrometer:micrometer-tracing'\" ${build_gradle_file}\n        ${sed_cmd} -i \"\/spring-cloud-starter-sleuth\/d\" ${build_gradle_file}\n      fi\n    # httpclient\u3092httpclient5\u306b\u5207\u308a\u66ff\u3048\n    - |\n      # \u5909\u6570\u5b9a\u7fa9\n      build_gradle_file=\".\/build.gradle\"\n      sed_cmd=gsed\n      \n      ${sed_cmd} -i -e \"s\/org.apache.httpcomponents:httpclient[^\\\"']*\/org.apache.httpcomponents.client5:httpclient5\/\" ${build_gradle_file}\n\n  # PR\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u751f\u6210\uff08echo\u7b49\u3067\u6a19\u6e96\u51fa\u529b\uff09\n  pr_message: |\n    echo 'this is migration sample.'<\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">\u3053\u306e\u5b9a\u7fa9\u3067\u5b9f\u969b\u306b\u4f5c\u6210\u3057\u305fPR\u304c\u3053\u3061\u3089\uff01<\/p>\n\n\n<p><\/p><div class=\"linkcard\"><div class=\"lkc-external-wrap\"><a class=\"lkc-link no_icon\" href=\"https:\/\/github.com\/rhirabay\/springboot-migration-sample-3.0\/pull\/4\/files\" target=\"_blank\" rel=\"external noopener\"><div class=\"lkc-card\"><div class=\"lkc-info\"><img loading=\"lazy\" decoding=\"async\" class=\"lkc-favicon\" src=\"https:\/\/www.google.com\/s2\/favicons?domain=github.com\" alt=\"\" width=\"16\" height=\"16\"><div class=\"lkc-domain\">GitHub<\/div><\/div><div class=\"lkc-content\"><figure class=\"lkc-thumbnail\"><img decoding=\"async\" class=\"lkc-thumbnail-img\" src=\"\/\/hirabay.net\/wp-content\/uploads\/pz-linkcard\/cache\/ee7898795ea4fa65f80279c2ebb95598d03845d9cd7acd5d5f835ada472aa1a0.jpeg\" alt=\"\"><\/figure><div class=\"lkc-title\"><div class=\"lkc-title-text\">migrate springboot to 3.0 from 2.7. by rhirabay \u00b7 Pull Request #4 \u00b7 rhirabay\/\u2026<\/div><\/div><div class=\"lkc-url\">https:\/\/github.com\/rhirabay\/springboot-migration-sample-3.0\/pull\/4\/files<\/div><div class=\"lkc-excerpt\">this is migration sample.This change was executed automatically with Shepherd. \ud83d\udc9a\ud83e\udd16<\/div><\/div><div class=\"clear\"><\/div><\/div><\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>SpringBoot 2.7\u304b\u30893.0\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u60c5\u5831\u3092\u4ee5\u4e0b\u306e\u8a18\u4e8b\u3067\u307e\u3068\u3081\u307e\u3057\u305f\u304c\u3001\u5b9f\u696d\u52d9\u3067\u306f\u5c11\u3057\u3067\u3082\u624b\u9593\u3092\u7701\u304d\u305f\u3044\u3067\u3059\u3088\u306d\u2026\uff01 \u3053\u306e\u8a18\u4e8b\u3067\u306fGradle\u3092\u5bfe\u8c61\u306b\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u306e\u81ea\u52d5\u5316\u65b9\u6cd5\u3092\u307e\u3068\u3081\u307e\u3059\u3002 Warning: &#8230; <\/p>\n","protected":false},"author":1,"featured_media":147,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[33,13,32],"class_list":["post-142","post","type-post","status-publish","format-standard","has-post-thumbnail","category-6","tag-gradle","tag-springboot","tag-32"],"jetpack_featured_media_url":"https:\/\/hirabay.net\/wp-content\/uploads\/2023\/01\/317f91988120ac720e34b65032ada5f9.png","_links":{"self":[{"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/posts\/142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hirabay.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=142"}],"version-history":[{"count":9,"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/posts\/142\/revisions"}],"predecessor-version":[{"id":576,"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/posts\/142\/revisions\/576"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hirabay.net\/index.php?rest_route=\/wp\/v2\/media\/147"}],"wp:attachment":[{"href":"https:\/\/hirabay.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hirabay.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hirabay.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}