首页 > 编程语言 > 详细

PowerShell拼接javac和javadoc调用

时间:2021-06-26 11:51:24      阅读:26      评论:0      收藏:0      [点我收藏+]

在不能使用maven的情况下,使用PowerShell做生成脚本便于跨平台一次写完到处运行,比.sh+.cmd双实现要方便。PowerShell本身是开源的,也算满足自主可控限制。
指定class目标JRE版本需要的javac参数项(PowerShell Core for Linux上失效,不过一般工业软件又是国产Linux系统上带的都是JDK 1.8)

$javacTargetVerb = if ((Get-Command java).Version.Major -gt 8) { "--release", "8" } else { "-target", "8" }

拼接-cp,以几个commons.apache.org包为例

$dirsep = if ($IsLinux) { ":" } else { ";" }
$dependedJars = "../lib/commons-io-2.6.jar", "../lib/commons-math3-3.6.1.jar"
$dependedJars = [String]::new(($dependedJars | ForEach-Object { ($dirsep + """$_""").ToCharArray() }))
$dependedJars = "-cp", $dependedJars.Substring(1) # 或者"bin"+$dependedJars之类的

在src代码目录下执行javac

javac $javacTargetVerb $dependedJars `
    -Xlint:deprecation -Xlint:unchecked -encoding utf-8 -d ../bin `
    (Get-ChildItem -Recurse -Include *.java)

在src代码目录下执行javadoc

javadoc -quiet $dependedJars `
    -encoding utf-8 -docencoding utf-8 -public -d ../doc `
    (Get-ChildItem -Recurse -Include *.java)

PowerShell拼接javac和javadoc调用

原文:https://www.cnblogs.com/logischerweise/p/14933289.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!