You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自定义Java打包EXE被Windows Defender误杀的解决方案咨询

解决方案汇总

1. 替换快捷方式实现逻辑,从根源避免快捷方式被查杀

你当前的快捷方式指向自定义打包的BCS.exe,是Defender判定风险的核心原因,可做如下修改:

  • 快捷方式目标改为系统原生的java.exe(如果程序内置了jre就指向打包的jre目录下的java.exe),参数填写-jar "{app}\BCS.jar"
  • 快捷方式图标保留你原本的自定义图标即可

系统自带的java.exe默认有微软的可信签名,指向可信程序的快捷方式不会被Defender判定为恶意项,完全适配用户自定义快捷方式存放路径的场景。

2. 优化Windows Defender排除项规则

你当前仅添加了目录和进程排除,可补充哈希级别的排除规则,不受文件存放路径影响:
修改你的setup.ps1如下:

$scriptPath = split-path -parent $MyInvocation.MyCommand.Definition
# 原有排除规则保留
Add-MpPreference -ExclusionPath $scriptPath
Add-MpPreference -ExclusionProcess "BCS.exe"
# 新增BCS.exe的哈希排除,不管文件/快捷方式存放在哪个路径都生效
$exeHash = (Get-FileHash -Path "$scriptPath\BCS.exe").Hash
Add-MpPreference -ExclusionHash $exeHash

同时确保你的Inno Setup脚本中添加PrivilegesRequired=admin配置,强制安装包请求管理员权限,避免排除规则添加失败。

3. 降低程序本身的误杀概率

  • 替换当前bat转exe的打包方案:改用Java官方自带的jpackage工具打包exe,可同时内置对应版本的jre,不需要用户额外安装Java环境,jpackage打包出的exe特征更合规,误杀率远低于第三方bat转exe工具。
  • 给程序添加数字签名:可先使用自签名证书测试效果,正式发布可申请低成本的代码签名证书,签名后的程序会被Defender标记为可信来源,误杀概率会大幅降低。
  • 提交误报申请到微软:将你的程序安装包、exe文件提交到微软的安全情报审核通道,说明程序是面向学生的教学类矩阵运算工具,审核通过后微软会将你的程序特征从威胁库中移除,所有用户都不会再出现误杀问题,是长期最优解决方案。

内容的提问来源于stack exchange,提问作者veiocadan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 10:54:07