{"id":46599,"date":"2023-07-21T00:12:43","date_gmt":"2023-07-20T15:12:43","guid":{"rendered":"https:\/\/www.charlezz.com\/?p=46599"},"modified":"2023-07-21T00:12:46","modified_gmt":"2023-07-20T15:12:46","slug":"gradle-%eb%b9%8c%eb%93%9c-%ec%8b%9c-%ed%8a%b9%ec%a0%95-%ed%83%9c%ec%8a%a4%ed%81%ac-%ea%b1%b4%eb%84%88%eb%9b%b0%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/charlezz.com\/?p=46599","title":{"rendered":"Gradle \ube4c\ub4dc \uc2dc \ud2b9\uc815 \ud0dc\uc2a4\ud06c \uac74\ub108\ub6f0\uae30"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f0\uac8c \ub41c \ubc30\uacbd<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"957\" src=\"https:\/\/www.charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26-1024x957.png\" alt=\"\" class=\"wp-image-46600\" srcset=\"https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26-1024x957.png 1024w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26-300x280.png 300w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26-768x717.png 768w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26-1536x1435.png 1536w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com--2023-07-20--11.43.26.png 1732w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\uc704 \ucea1\uccd0\ub41c \uc774\ubbf8\uc9c0\ub97c \ubcf4\uba74 \ucd1d \ube4c\ub4dc\uc2dc\uac04\uc5d0\uc11c \ud2b9\uc815 \ud0dc\uc2a4\ud06c(RealmAccessorsTransformer) \uac00 \uc0c1\ub2f9\ud55c \ubd80\ubd84\uc744 \ucc28\uc9c0\ud558\ub294 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\ub2e4. <\/p>\n\n\n\n<p>\uc65c \uadf8\ub7f0\uc9c0 <a href=\"https:\/\/github.com\/realm\/realm-java\/issues\/7802\">\uad6c\uae00\ub9c1<\/a>\uc744 \ud574\ubd24\ub354\ub2c8 \ud504\ub85c\uc81d\ud2b8\ub97c AGP 8.0\ub85c \uc5c5\ub370\uc774\ud2b8 \ud55c \uc774\ud6c4\uc5d0 Realm(\ubaa8\ubc14\uc77c\uc6a9 DB)\uc5d0 \ud3ec\ud568\ub41c Gradle \ud50c\ub7ec\uadf8\uc778\uc774 \uc0c8\ub85c\uc6b4 Transformer API \uc0c1\uc5d0\uc11c \uc99d\ubd84\ube4c\ub4dc\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc544 \ud504\ub85c\uc81d\ud2b8 \ucf54\ub4dc \uc804\uccb4\ub97c \uc0c8\ub85c \ube4c\ub4dc\ud558\ub2e4\ubcf4\ub2c8 \uc2dc\uac04\uc774 \ub9ce\uc774 \uc18c\uc694\ub418\ub294 \uac83\uc73c\ub85c \ud655\uc778\ub418\uc5c8\ub2e4.<\/p>\n\n\n\n<p>Realm\uc5d0\uc11c \uba3c\uc800 \ud574\uacb0\ud558\uc9c0 \uc54a\ub294 \uc774\uc0c1, \ub0b4\uac00 \ud574\uacb0 \ud560 \uc218 \uc788\ub294 \uc774\uc288\ub294 \uc544\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \ube4c\ub4dc\uc2dc\uac04\uc774 20\ubd84\uc744 \ub118\uae38 \ub54c\uac00 \ubd80\uc9c0\uae30\uc218\ub77c \uc0dd\uc0b0\uc131\uc774 \ub108\ubb34 \ub5a8\uc5b4\uc838\ubc84\ub838\ub2e4. &#8220;Realm\uc758\uc874\uc131\uc744 \uac77\uc5b4\ub0b4\uace0 Room\uc744 \uc368\uc57c\ud558\ub098?&#8221;, &#8220;Realm\uc744 \ub2e4\ub978 \ubaa8\ub4c8\ub85c \uaca9\ub9ac\ud560\uae4c?&#8221; \ubb50 \ud558\ub098 \uc26c\uc6b4\uc791\uc5c5\uc774 \uc5c6\ub2e4. \uac8c\ub2e4\uac00 \uc774 \ud504\ub85c\uc81d\ud2b8\uc5d0\uc11c Realm\uc744 \uc4f0\ub294 \uc0ac\ub78c\uc740 \ub0b4\uac00 \uc544\ub2c8\ub77c \ub2e4\ub978 \ud300\uc6d0\uc774\ub2e4.<\/p>\n\n\n\n<p>\ub0b4\uac00 \uc791\uc5c5\ud558\ub294 \ubd80\ubd84\uc5d0\uc11c\ub294 Realm\uc5d0 \ub300\ud55c \uc758\uc874\uc131\uc774 \uc5c6\uc73c\ubbc0\ub85c, debug \uc2a4\ud14c\uc774\uc9c0\uc5d0\uc11c \uc571\uc744 \ube60\ub974\uac8c \ube4c\ub4dc\ud560 \uc218\ub9cc \uc788\ub2e4\uba74  Realm\uc744 \uc758\uc874\ud55c \ub2e4\ub978 \ud53c\uccd0\uac00 \uc5b4\ub5bb\uac8c \ub418\ub358 \ub09c \uc0c1\uad00\uc774 \uc5c6\ub2e4. \uadf8\ub798\uc11c Realm\uacfc \uc5f0\uad00\ub41c \ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f8 \uc218 \uc788\ub3c4\ub85d \uc14b\ud305\ud558\uae30\ub85c \uacb0\uc2ec\ud588\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ud2b9\uc815 \ud0dc\uc2a4\ud06c \uac74\ub108\ub6f0\uae30<\/h2>\n\n\n\n<p>\uc758\uc678\ub85c \ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f0\ub294 \ubc29\ubc95\uc740 \uac04\ub2e8\ud588\ub2e4. \uc571\ubaa8\ub4c8\uc758 build.gradle.kts\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc740 \ucf54\ub4dc\ub97c \uc0bd\uc785\ud558\uba74 \ub41c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tasks.whenTaskAdded {\n    if(name.contains(\"RealmAccessorsTransformer\")){\n        enabled = false\n    }\n}\n\n\ud2b9\uc815 \uc774\ub984\uc758 \ud0dc\uc2a4\ud06c\ub97c \ube44\ud65c\uc131\ud654\ud568\uc73c\ub85c\uc368 \ube4c\ub4dc\uc2dc\uc5d0 \ud574\ub2f9 \ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f8 \uc218 \uc788\ub2e4.\n\ud558\uc9c0\ub9cc \uc774\ub807\uac8c \ubcc0\uacbd\ud55c \ucf54\ub4dc\ub97c develop \ube0c\ub79c\uce58\uc5d0 \ud478\uc2dc\ud55c\ub2e4\uba74 \ub2e4\ub978\uc774\uc758 \uc9c8\ud0c0\ub97c \ubc1b\uc744 \uc218 \uc788\ub2e4. \ub098\ub9cc\uc758 \ud658\uacbd\uc5d0\uc11c\ub9cc \ud574\ub2f9 \uc791\uc5c5\uc744 \uc218\ud589\ud558\ub3c4\ub85d \ubcc0\uacbd\ud574\ubcf4\uc790.<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">local.properties\uc5d0\uc11c \uc18d\uc131 \uc77d\uae30<\/h2>\n\n\n\n<p>local.properties \ub9c8\uc9c0\ub9c9 \uc904\uc5d0 \ub2e4\uc74c\uacfc \uac19\uc774 \uc6d0\ud558\ub294 \uc774\ub984\uc73c\ub85c \uc18d\uc131\uc744 \ud558\ub098 \uc120\uc5b8\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># local.properties\n<strong>skipRealmAccessorsTransformer<\/strong>=true<\/code><\/pre>\n\n\n\n<p>\uc774\uc81c build.gradle.kts \uc5d0\uc11c \ub2e4\uc74c\uacfc \uac19\uc774 \ud574\ub2f9 \uc18d\uc131\uc744 \ubd88\ub7ec\uc62c \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ build.gradle.kts\n...\ntasks.whenTaskAdded {\n    val skip: Boolean = gradleLocalProperties(rootDir)\n        .getProperty(\"<strong>skipRealmAccessorsTransformer<\/strong>\")\n        .toBoolean()\n    if(skip &amp;&amp; name.contains(\"RealmAccessorsTransformer\")){\n        println(\"skipped ${this.name}\")\n        enabled = false\n    }\n}<\/code><\/pre>\n\n\n\n<p>\uc774\ub807\uac8c \ud558\uba74 \ub0b4 \uac1c\ubc1c\ud658\uacbd\uc5d0\uc11c\ub9cc skip\uac12\uc774 true\uc774\ubbc0\ub85c \ud574\ub2f9 \ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f0\uac8c \ub41c\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"861\" src=\"https:\/\/www.charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com-gradle--2023-07-21--12.11.40-1024x861.png\" alt=\"\" class=\"wp-image-46601\" srcset=\"https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com-gradle--2023-07-21--12.11.40-1024x861.png 1024w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com-gradle--2023-07-21--12.11.40-300x252.png 300w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com-gradle--2023-07-21--12.11.40-768x646.png 768w, https:\/\/charlezz.com\/wordpress\/wp-content\/uploads\/2023\/07\/www.charlezz.com-gradle--2023-07-21--12.11.40.png 1530w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\ud0dc\uc2a4\ud06c\ub97c \uac74\ub108\ub6f0\uac8c \ub41c \ubc30\uacbd \uc704 \ucea1\uccd0\ub41c \uc774\ubbf8\uc9c0\ub97c \ubcf4\uba74 \ucd1d \ube4c\ub4dc\uc2dc\uac04\uc5d0\uc11c \ud2b9\uc815 \ud0dc\uc2a4\ud06c(RealmAccessorsTransformer) \uac00 \uc0c1\ub2f9\ud55c \ubd80\ubd84\uc744 \ucc28\uc9c0\ud558\ub294 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\ub2e4. \uc65c \uadf8\ub7f0\uc9c0 \uad6c\uae00\ub9c1\uc744 \ud574\ubd24\ub354\ub2c8 \ud504\ub85c\uc81d\ud2b8\ub97c AGP 8.0\ub85c \uc5c5\ub370\uc774\ud2b8 \ud55c \uc774\ud6c4\uc5d0 Realm(\ubaa8\ubc14\uc77c\uc6a9 DB)\uc5d0 \ud3ec\ud568\ub41c Gradle \ud50c\ub7ec\uadf8\uc778\uc774 \uc0c8\ub85c\uc6b4 Transformer API \uc0c1\uc5d0\uc11c \uc99d\ubd84\ube4c\ub4dc\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\uc544 \ud504\ub85c\uc81d\ud2b8 \ucf54\ub4dc \uc804\uccb4\ub97c \uc0c8\ub85c \ube4c\ub4dc\ud558\ub2e4\ubcf4\ub2c8 \uc2dc\uac04\uc774 \ub9ce\uc774 \uc18c\uc694\ub418\ub294 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"inline_featured_image":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"categories":[3],"tags":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/46599"}],"collection":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=46599"}],"version-history":[{"count":1,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/46599\/revisions"}],"predecessor-version":[{"id":46602,"href":"https:\/\/charlezz.com\/index.php?rest_route=\/wp\/v2\/posts\/46599\/revisions\/46602"}],"wp:attachment":[{"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=46599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=46599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/charlezz.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=46599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}