{"id":2179,"date":"2024-06-02T14:41:11","date_gmt":"2024-06-02T06:41:11","guid":{"rendered":"https:\/\/wp.minicoda.com\/?p=2179"},"modified":"2024-06-02T16:02:49","modified_gmt":"2024-06-02T08:02:49","slug":"java-exe%e5%92%8cjavac-exe%e6%ba%90%e4%bb%a3%e7%a0%81%e6%98%af%e7%94%a8%e4%bb%80%e4%b9%88%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80","status":"publish","type":"post","link":"https:\/\/wp.minicoda.com\/index.php\/java-exe%e5%92%8cjavac-exe%e6%ba%90%e4%bb%a3%e7%a0%81%e6%98%af%e7%94%a8%e4%bb%80%e4%b9%88%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80\/","title":{"rendered":"java.exe\u548cjavac.exe\u6e90\u4ee3\u7801\u662f\u7528\u4ec0\u4e48\u7f16\u7a0b\u8bed\u8a00?"},"content":{"rendered":"\n<p>  \u5355\u7eaf\u4ee5JVM\u548cJava\u7f16\u8bd1\u5668\u89d2\u5ea6\uff0cJava\u7f16\u8bd1\u5668\u53ef\u4ee5\u4f7f\u7528\u4efb\u4f55\u8bed\u8a00(\u6700\u65e9\u7684Java(\u65e9\u671f\u53ebOak)\u7f16\u8bd1\u5668\u662fC\u8bed\u8a00\u7f16\u5199\uff0c\u540e\u6765\u6539\u4e3a<a href=\"https:\/\/openjdk.org\/groups\/compiler\/README.html\" data-type=\"link\" data-id=\"https:\/\/openjdk.org\/groups\/compiler\/README.html\">Java\u8bed\u8a00\u81ea\u4e3e<\/a>)\u3002JVM\u6709\u6240\u4e0d\u540c\uff0c\u5b83\u5fc5\u987b\u5305\u542bnative\u4ee3\u7801\u4ee5\u5b8c\u6210.class\u6587\u4ef6\u89e3\u6790\u5e76\u6267\u884c\uff0c\u4e00\u822c\u610f\u4e49\u4e0a\uff0cJVM\u4e0d\u80fd\u9009\u7528\u5b83\u81ea\u8eab\u7684\u8bed\u8a00Java\u53bb\u7f16\u5199\u3002\u4ee5\u5b9e\u4f5c\u770b\uff0cJVM\u4e3b\u4f53\u4ee5C++\u4e3a\u4e3b\u3002<\/p>\n\n\n\n<p>  \u4e0a\u9762\u8fd9\u4e9b\u5927\u9053\u7406\u542c\u8d77\u6765\u5f88\u6709\u9053\u7406\uff0c\u4f46\u5bf9\u4e8e\u8fd9\u4e2a\u95ee\u9898\u6ca1\u4ec0\u4e48\u5e2e\u52a9\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5bf9\u4e8eWindows\u73af\u5883\uff0c\u5b98\u65b9Windows JDK\u7f16\u8bd1\u73af\u5883\u9009\u62e9<a href=\"https:\/\/github.com\/openjdk\/jdk\/blob\/master\/doc\/building.md#microsoft-visual-studio\" data-type=\"link\" data-id=\"https:\/\/github.com\/openjdk\/jdk\/blob\/master\/doc\/building.md#microsoft-visual-studio\">VS<\/a> MSVC\u548cCygwin. \u8fd9\u610f\u5473\u7740\uff0cjavac.exe\u548cjava.exe\u6700\u7ec8\u90fd\u662fC\/C++\u4ee3\u7801\u7f16\u5199\u7684\u3002<\/li>\n\n\n\n<li>\u4f60\u53ef\u4ee5\u4f1a\u7591\u60d1\uff0cJDK\u4e2d\u6839\u672c\u6ca1\u627e\u5230C\/C++\u7f16\u5199\u7684javac\u7f16\u8bd1\u5668\uff0c\u5b83\u4eec\u5728\u54ea\u91cc\u5462?<\/li>\n\n\n\n<li>\u7528VC++\u5de5\u5177\u89e3\u6790javac.exe\uff1a<br>  dumpbin \/all <strong><em>\"D:\\Program Files\\Java\\jdk1.8.0_301\\bin\\javac.exe\"<\/em><\/strong><br>\u6211\u4eec\u5f97\u5230\u4e86\u5982\u4e0b\u8fd9\u6bb5\uff1a<br>  <strong><em>c:\\jenkins\\workspace\\8-2-build-windows-amd64-cygwin\\jdk8u301\\1513\\build\\windows-amd64\\jdk\\objs\\javac_objs\\javac.pdb<\/em><\/strong><\/li>\n\n\n\n<li>javac.exe\u548cjava.exe\u53ea\u662f\"\u524d\u7aef\", \u628a\u53c2\u6570\u4f20\u9012\u7ed9JVM\u53bb\u6267\u884c\uff0c\u5e76<em><strong>\u6ca1\u6709\u6267\u884c\u5177\u4f53\u7684\u7f16\u8bd1\u5668\u548c\u89e3\u91ca\u5668\u7684\u672c\u8d28\u5de5\u4f5c<\/strong><\/em>\u3002\u771f\u6b63\u7684\u6267\u884c\u4f1a\u7531JVM\u6267\u884c\u5b8c\u6210\uff0c\u5176\u4e2djavac.exe\u8f6c\u4ea4\u7ed9Java\u8bed\u8a00\u7f16\u5199\u7684\u7f16\u8bd1\u5668\u5b8c\u6210\u3002<\/li>\n\n\n\n<li>javac.exe (\u7248\u672c1.8)\u672c\u8d28\u4e0a\u5c31\u662fjava.exe -cp \"%JAVA_HOME%\\lib\\tools.jar\" com.sun.tools.javac.Main.<br>\u5373\u5982\u4e0b\u4e24\u79cd\u76f8\u540c\u7684\uff1a\n<ul class=\"wp-block-list\">\n<li>java.exe -cp \"%JAVA_HOME%\\lib\\tools.jar\" com.sun.tools.javac.Main <strong><em>Demo.java<\/em><\/strong><\/li>\n\n\n\n<li>javac.exe Demo.java<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>\u5355\u7eaf\u4ee5JVM\u548cJava\u7f16\u8bd1\u5668\u89d2\u5ea6\uff0cJava\u7f16\u8bd1\u5668\u53ef\u4ee5\u4f7f\u7528\u4efb\u4f55\u8bed\u8a00(\u6700\u65e9\u7684Java(\u65e9\u671f\u53ebOak)\u7f16\u8bd1\u5668\u662fC\u8bed\u8a00\u7f16\u5199\uff0c\u540e\u6765\u6539\u4e3aJava\u8bed\u8a00\u81ea\u4e3e)\u3002JVM\u6709\u6240\u4e0d\u540c\uff0c\u5b83\u5fc5\u987b\u5305\u542bnative\u4ee3\u7801\u4ee5\u5b8c\u6210.cla&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[299],"tags":[],"class_list":["post-2179","post","type-post","status-publish","format-standard","hentry","category-think"],"views":49,"_links":{"self":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/comments?post=2179"}],"version-history":[{"count":7,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2179\/revisions"}],"predecessor-version":[{"id":2191,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/posts\/2179\/revisions\/2191"}],"wp:attachment":[{"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/media?parent=2179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/categories?post=2179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.minicoda.com\/index.php\/wp-json\/wp\/v2\/tags?post=2179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}