Java程序打包成EXE的完美解决方案
日常工作之中, 主要是运用Java来开展开发工作, 在业余的时间里面,同样热衷于技术方面的研究, 并且喜欢利用Java所拥有的GUI库Swing去开发一些具备实用价值的小工具。但是, 利用Swing去开发软件, 相较于C/C而言, 存在着一个相当大的劣势, 那就是, 由Java打包而成的文件, 无法直接进行运行, 而是需要借助JRE也就是Java运行环境才能够运行, 倘若使用该软件的人并未安装JRE, 那么软件亦是无法运行的, 所以, 基本上也就没有人会去考虑运用Java来开发桌面应用了。当前Java程序打包分发的几种方案以上方案都有不同的优缺点技术方案具备优点、缺点, 其性能可提升, 能减少资源损耗, 安全性极高, 然而构建耗时, 调试艰难, 对反射Jlink二进制文件支持欠佳, 相比携带环境更为轻量级, 构建繁杂, 调试困难, 体积庞大, Exe4J可降低使用门槛, 拥有更好体验, 便于调试, 体积大, 需JRE运行, 不适合制作小工具批处理, 降低使用门槛, 配置灵活, 易于更新, 便于调试, 体积大, 需JRE运行, 不适合做小工具, 仅以Jar包分发, 文件小, 易更新, 在没有JRE的电脑上无法运行, 需命令启动, 使用门槛高, 体验不佳。在上述提及的方案里头, 以二进制文件形式进行分发的话, 会致使调试面临困难, 而要是采用jar包形式来分发, 又会对使用体验造成影响 , 此时呢, 我综合了上边所讲的几种方案 , 借助制作这么一个打包工具这个举措 , 该工具的用途是把Java程序打包成为二进制可执行文件, 其软件界面呈现如下:图片软件使用如下现有一个Swing程序如下pom.xml文件4.0.0 org.helloswing HelloSwing 1.0-SNAPSHOT 17 17 UTF-8 com.formdev flatlaf 3.5.1 org.apache.maven.plugins maven-assembly-plugin 3.7.1 jar-with-dependencies false org.hellloswing.HelloSwing make-assembly package single.java文件package org.hellloswing; import com.formdev.flatlaf.FlatDarkLaf; import com.formdev.flatlaf.FlatLightLaf; import javax.swing.*; import java.awt.*; public class HelloSwing { public static void main(String[] args) throws UnsupportedLookAndFeelException { // 初始化皮肤 FlatLightLaf.install(); UIManager.setLookAndFeel( new FlatDarkLaf()); // 初始化窗口 JFrame jFrame new JFrame(Hello Swing); // 设置大小 jFrame.setSize(500, 500); // 关闭窗口后退出 jFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); // 设置居中 jFrame.setLocationRelativeTo(null); // 设置元素 JPanel jPanel new JPanel(new BorderLayout()); jPanel.add(new JLabel(Hello Swing, JLabel.CENTER), BorderLayout.CENTER); jFrame.getContentPane().add(jPanel); // 显示窗口 jFrame.setVisible(true); } }把它弄成胖JAR之后, 导出精简 JRE, 接着借助打包工具来打包, 把那 JAR 文件跟 JRE 打包成 exe 文件, 随后就能通过双击去运行了。WWw.BlOg.GeVc.CoM.cN/Article/details/588205.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/243442.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/484834.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/481547.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/979334.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/635040.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/808276.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/729498.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/862044.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/933347.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/696010.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/286091.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/936301.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/473823.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/363568.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/038299.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/406929.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/237856.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/852824.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/772846.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/866156.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/322820.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/406987.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/135496.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/106714.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/832983.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/392571.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/464593.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/508643.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/238356.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/087114.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/049425.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/801424.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/277276.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/577365.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/058599.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/739237.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/858168.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/826542.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/872158.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/262310.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/803031.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/564192.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/337453.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/770039.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/873211.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/487456.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/329706.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/321167.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/754442.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/682282.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/771794.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/844595.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/598714.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/104965.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/120503.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/972081.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/169298.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/165737.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/116918.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/516818.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/826231.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/808970.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/794609.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/059065.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/859177.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/526959.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/871334.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/942053.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/819484.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/919848.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/403578.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/201879.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/815609.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/628891.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/584925.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/629255.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/407174.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/124066.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/342511.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/636288.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/472600.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/309584.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/795304.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/940767.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/914691.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/398799.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/171910.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/863986.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/447363.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/891253.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/949566.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/494189.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/455315.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/163228.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/012577.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/082747.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/992579.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/485792.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/918585.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/540816.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/847313.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/149783.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/623553.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/350396.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/862333.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/828012.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/737107.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/481559.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/133399.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/902998.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/368972.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/472732.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/419251.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/203319.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/418303.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/250007.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/461433.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/141211.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/379071.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/011667.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/232825.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/635663.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/148811.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/516416.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/466242.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/837300.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/889093.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/863222.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/891139.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/451401.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/217981.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/606946.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/691944.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/500892.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/742529.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/782542.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/729407.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/554405.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/578657.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/186563.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/214313.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/684943.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/988117.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/524953.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/918510.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/175888.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/813396.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/028793.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/997026.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/980571.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/320075.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/009809.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/692217.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/054999.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/187446.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/931980.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/445986.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/045246.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/265491.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/569350.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/469710.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/928868.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/186379.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/335043.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/833020.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/026095.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/499974.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/201716.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/913534.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/918405.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/786667.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/718072.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/704718.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/796500.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/860045.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/683538.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/977661.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/092028.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/894292.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/466190.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/773307.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/135340.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/807334.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/719291.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/146480.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/457387.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/953547.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/433592.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/830381.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/713902.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/515484.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/593903.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/372774.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/136811.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/374842.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/283686.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/397317.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/499215.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/705945.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/415638.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/071022.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/441551.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/814537.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/261997.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/169788.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/194545.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/390222.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/556963.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/091113.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/036562.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/925812.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/981169.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/182725.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/451398.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/364594.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/028103.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/059611.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/626533.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/831383.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/420316.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/743244.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/407200.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/417162.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/696690.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/766534.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/070879.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/274543.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/958817.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/049409.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/919348.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/370276.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/111131.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/292632.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/215318.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/590580.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/751988.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/786178.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/438613.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/193612.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/600562.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/096311.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/755726.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/081884.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/197890.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/536151.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/694682.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/392033.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/012445.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/723126.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/459986.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/849605.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/021169.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/387408.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/309447.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/079552.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/732181.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/786024.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/690093.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/840788.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/063337.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/044862.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/651826.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/049352.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/235556.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/224367.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/653360.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/926573.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/111894.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/538503.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/357753.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/966171.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/341781.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/577916.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/583517.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/308272.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/887558.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/942893.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/609678.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/896853.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/938911.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/177086.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/999819.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/269667.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/478876.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/033734.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/834869.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/751725.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/992464.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/438550.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/128189.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/435373.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/449175.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/720595.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/039380.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/034649.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/980069.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/996229.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/762700.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/055501.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/950136.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/115406.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/705765.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/965468.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/758883.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/943792.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/889031.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/773723.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/045891.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/351917.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/769744.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/133782.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/969476.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/701537.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/630652.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/174719.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/355035.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/296595.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/152103.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/489582.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/756847.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/838892.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/853171.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/751316.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/559179.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/274946.sHtMLWWw.BlOg.GeVc.CoM.cN/Article/details/619036.sHtML

相关新闻

水下视觉识别落地难|海底鱼类YOLO标注数据集分享|海洋生物目标检测训练素材

水下视觉识别落地难|海底鱼类YOLO标注数据集分享|海洋生物目标检测训练素材

水下视觉识别落地难|海底鱼类YOLO标注数据集分享|海洋生物目标检测训练素材 #海洋目标检测 #YOLO数据集 #水下鱼类识别 #计算机视觉实战 #深度学习训练素材开篇行业 2026年近海水下勘测、水下机器人巡检、海洋牧场智能化监测项目集中落地,沿海多地海洋科研实验室、水…

2026/9/14 21:48:32 阅读更多 →
Vue虚拟DOM与key属性:原理、优化与实践

Vue虚拟DOM与key属性:原理、优化与实践

1. 虚拟DOM与key的基础概念 在Vue的渲染机制中,虚拟DOM(Virtual DOM)是一个核心概念。简单来说,虚拟DOM就是一个轻量级的JavaScript对象,它是对真实DOM的抽象表示。当组件的状态发生变化时,Vue会先生成一个…

2026/9/12 20:23:24 阅读更多 →
AI多因子模型解析:通胀预期升温,黄金跌破4000美元关口的因果推理框架

AI多因子模型解析:通胀预期升温,黄金跌破4000美元关口的因果推理框架

摘要:本文通过AI多因子宏观分析模型,结合黄金价格走势、国际油价、美元指数、美债收益率及最新美经济数据,分析黄金跌破4000美元关口背后的驱动因素,并利用机器学习情景预测、因果推理模型和资金流分析框架,对黄金短期…

2026/9/12 10:29:06 阅读更多 →

最新新闻

OpenClaw 跑本地智能体任务:Key 用 TaoToken

OpenClaw 跑本地智能体任务:Key 用 TaoToken

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/14 21:52:17 阅读更多 →
AHC算法在点云平面识别中的高效应用与优化

AHC算法在点云平面识别中的高效应用与优化

1. 项目概述:AHC算法在点云平面识别中的应用价值在三维视觉领域,点云数据分割一直是核心挑战之一。去年参与某工业检测项目时,我们面对的是包含数千万个数据点的金属零件扫描数据,需要快速识别出其中的平面特征用于质量检测。传统…

2026/9/14 21:52:17 阅读更多 →
Spring Boot+Vue水质监测中台全栈实践

Spring Boot+Vue水质监测中台全栈实践

简介:本资源是武汉大学2025年大学生创新创业训练计划(大创)中水质检测可视化平台的完整Web开发源码,面向Java后端与Vue前端开发者、环境类项目实践者及高校创新团队,解决水质监测数据高效展示与交互呈现问题。压缩包共…

2026/9/14 21:52:17 阅读更多 →
Python代码格式化工具Black的核心优势与实践指南

Python代码格式化工具Black的核心优势与实践指南

1. 为什么Python开发者需要Black代码格式化工具在Python开发中,代码风格一致性往往成为团队协作的痛点。我经历过多个项目,发现约40%的代码审查时间都浪费在缩进、空格、换行等格式问题的争论上。Black的出现彻底改变了这种状况——它是一款"独裁式…

2026/9/14 21:52:17 阅读更多 →
基于 Rainbond 一键部署 Apache DolphinScheduler 高可用集群:从应用到源码的完整实践指南

基于 Rainbond 一键部署 Apache DolphinScheduler 高可用集群:从应用到源码的完整实践指南

基于 Rainbond 一键部署 Apache DolphinScheduler 高可用集群:从应用到源码的完整实践指南 【免费下载链接】dolphinscheduler Apache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code 项…

2026/9/14 21:52:17 阅读更多 →
永磁同步风力发电机Simulink建模与仿真实践

永磁同步风力发电机Simulink建模与仿真实践

1. 永磁同步风力发电机仿真模型概述永磁同步风力发电机(PMSG)因其高效率、高功率密度和免维护特性,已成为现代风力发电系统的主流选择。Simulink作为MATLAB中的动态系统仿真平台,为风力发电机建模与控制策略验证提供了理想环境。这个仿真模型的核心价值在…

2026/9/14 21:51:17 阅读更多 →

日新闻

AI音乐侵权案中的测试工程与版权保护技术

AI音乐侵权案中的测试工程与版权保护技术

1. 项目概述:当测试工程师遇上AI音乐侵权案去年夏天,我作为技术顾问参与了一起特殊的著作权纠纷案——某音乐平台AI作曲功能被指控批量侵权。这起案件的特殊性在于:原告方并非传统音乐人,而是一家拥有百万级曲库的数字音乐发行商&…

2026/9/14 0:00:26 阅读更多 →
嵌入式面试I2C与SPI深度解析:从协议到量产调试

嵌入式面试I2C与SPI深度解析:从协议到量产调试

1. 这份“高频知识点洞察”到底是什么,又为什么值得你花时间细读? 如果你最近在刷嵌入式开发岗位的招聘JD,或者正坐在工位上改第7版简历,又或者刚被面试官一句“讲讲I2C和SPI的区别”问得手心冒汗——那你不是一个人。过去两年我带…

2026/9/14 0:00:26 阅读更多 →
51单片机开环控制磁阻传感器的硬件匹配与代码实现

51单片机开环控制磁阻传感器的硬件匹配与代码实现

简介:本资源是一份面向嵌入式初学者与单片机课程实践者的51单片机开关磁阻电机(SRM)开环控制教学方案,聚焦磁阻位置检测、固定时序驱动与基础状态可视化。资源包含1个C语言主程序文件(zhuang600.c)实现电机…

2026/9/14 0:00:26 阅读更多 →

周新闻

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验 【免费下载链接】ai The AI Toolkit for TypeScript. From the creators of Next.js, the AI SDK is a free open-source library for building AI-powered applications and ag…

2026/9/14 5:45:49 阅读更多 →
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化

Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化 【免费下载链接】refine A React Framework for building internal tools, admin panels, dashboards & B2B apps with unmatched flexibility. 项目地址: https://gitcode.com/GitH…

2026/9/14 0:52:26 阅读更多 →
Flutter应用改名全指南:从Android到iOS的配置与工具实践

Flutter应用改名全指南:从Android到iOS的配置与工具实践

刚接一个外包项目时,甲方要求把工程里临时用的应用名改成正式产品名。我本来觉得“改名”这种小事,打开配置文件改一行不就完了?结果真动手才发现,Flutter项目里“应用名称”根本不是一处配置,而是一整套散落在 Androi…

2026/9/14 0:06:41 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/14 17:35:10 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/14 16:59:29 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/14 5:45:14 阅读更多 →