{"id":84,"date":"2015-10-05T08:34:31","date_gmt":"2015-10-05T08:34:31","guid":{"rendered":"https:\/\/boochlin.com\/?p=84"},"modified":"2026-09-19T18:04:25","modified_gmt":"2026-09-19T18:04:25","slug":"android-studio-release-jar-by-gradle","status":"publish","type":"post","link":"https:\/\/boochlin.com\/?p=84","title":{"rendered":"Android studio release jar by gradle"},"content":{"rendered":"<h3>Android studio release jar by gradle \uff08test on 1.3\uff09<\/h3>\n<p>\u4e3b\u8981\u4f86\u8aaaandroid build\u7684\u6642\u5019\u5c31\u6703\u5728 build\/build\/intermediates\/bundles\/release \u653e\u7f6eclasses.jar<\/p>\n<p>\u4f46\u662f\u5f88\u591a\u4eba\u53ef\u80fd\u4e0d\u6e05\u695a\u6216\u5fd8\u8a18\uff0c\u6240\u4ee5\u9019\u500bscript\u53ea\u662f\u628a classes.jar copy \u5230 build\/libs \u4e0b<\/p>\n<p>\u4e26 rename \u6210 \u5718\u968a\u767c\u5e03\u7684vname.jar\uff0c<\/p>\n<p>\u76ee\u524d\u5e95\u4e0b\u7684code\u5df2\u7d93\u7b26\u5408\u8981\u6c42<\/p>\n<pre><code class=\"hljs language-java\"><span class=\"hljs-type\">def<\/span> <span class=\"hljs-variable\">versionPropsFile<\/span> <span class=\"hljs-operator\">=<\/span> file(<span class=\"hljs-string\">&#x27;..\/version.properties&#x27;<\/span>)\n<span class=\"hljs-type\">task<\/span> <span class=\"hljs-title function_\">releaseJar<\/span><span class=\"hljs-params\">(type: Copy)<\/span> {\n    <span class=\"hljs-keyword\">if<\/span> (versionPropsFile.canRead()) {\n        def <span class=\"hljs-type\">Properties<\/span> <span class=\"hljs-variable\">versionProps<\/span> <span class=\"hljs-operator\">=<\/span> <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">Properties<\/span>();\n        versionProps.load(<span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">FileInputStream<\/span>(versionPropsFile));\n        <span class=\"hljs-type\">def<\/span> <span class=\"hljs-variable\">vName<\/span> <span class=\"hljs-operator\">=<\/span> versionProps[<span class=\"hljs-string\">&#x27;VERSION_NAME&#x27;<\/span>];\n        <span class=\"hljs-type\">def<\/span> <span class=\"hljs-variable\">vCode<\/span> <span class=\"hljs-operator\">=<\/span> versionProps[<span class=\"hljs-string\">&#x27;VERSION_CODE&#x27;<\/span>];\n        def <span class=\"hljs-type\">int<\/span> <span class=\"hljs-variable\">vnCode<\/span> <span class=\"hljs-operator\">=<\/span> vCode.toInteger()\n        <span class=\"hljs-type\">println<\/span> <span class=\"hljs-title function_\">sprintf<\/span><span class=\"hljs-params\">(<span class=\"hljs-string\">&quot;vName: %s vCode %d&quot;<\/span>, vName, vnCode)<\/span>;\n\n        from( <span class=\"hljs-string\">&#x27;build\/intermediates\/bundles\/release&#x27;<\/span>)\n        into( <span class=\"hljs-string\">&#x27;build\/libs&#x27;<\/span>)\n        include(<span class=\"hljs-string\">&#x27;classes.jar&#x27;<\/span>)\n        rename(<span class=\"hljs-string\">&#x27;classes.jar&#x27;<\/span>, <span class=\"hljs-string\">&#x27;home-&#x27;<\/span>+ vName + <span class=\"hljs-string\">&#x27;.jar&#x27;<\/span>)\n\n    } <span class=\"hljs-keyword\">else<\/span> {\n        <span class=\"hljs-keyword\">throw<\/span> <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">GradleException<\/span>(<span class=\"hljs-string\">&quot;Could not read version.properties!&quot;<\/span>)\n    }\n}<\/code><\/pre>\n<p>\u5982\u679c\u8981\u52a0\u5165 proguard \u53ef\u4ee5\u53c3\u8003<\/p>\n<p><a href=\"http:\/\/chaosleong.github.io\/blog\/2015\/08\/02\/android-studio-shi-yong-gradle-da-bao-jar\/\">http:\/\/chaosleong.github.io\/blog\/2015\/08\/02\/android-studio-shi-yong-gradle-da-bao-jar\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Android studio release jar by gradle \uff08test on 1.3\uff09 \u4e3b\u8981\u4f86\u8aaa [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[169],"tags":[16],"_links":{"self":[{"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/posts\/84"}],"collection":[{"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/boochlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=84"}],"version-history":[{"count":4,"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/posts\/84\/revisions"}],"predecessor-version":[{"id":1588,"href":"https:\/\/boochlin.com\/index.php?rest_route=\/wp\/v2\/posts\/84\/revisions\/1588"}],"wp:attachment":[{"href":"https:\/\/boochlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=84"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/boochlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=84"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/boochlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=84"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}