$ErrorActionPreference = 'Stop' $root = 'e:/code/crm-backend-matt' $repo = 'C:/Users/Administrator/.m2/repository' $mainOut = 'C:/Users/ADMINI~1/AppData/Local/Temp/crm-port-check' $out = 'C:/Users/ADMINI~1/AppData/Local/Temp/crm-port-test-check' New-Item -ItemType Directory -Force -Path $out | Out-Null $baseCp = (Get-Content "$root\.scratch\javac-cp.txt" -Raw).Trim() $testJars = @( "$repo/org/junit/jupiter/junit-jupiter/5.10.5/junit-jupiter-5.10.5.jar", "$repo/org/junit/jupiter/junit-jupiter-api/5.10.5/junit-jupiter-api-5.10.5.jar", "$repo/org/junit/jupiter/junit-jupiter-engine/5.10.5/junit-jupiter-engine-5.10.5.jar", "$repo/org/junit/jupiter/junit-jupiter-params/5.10.5/junit-jupiter-params-5.10.5.jar", "$repo/org/junit/platform/junit-platform-commons/1.10.5/junit-platform-commons-1.10.5.jar", "$repo/org/junit/platform/junit-platform-engine/1.10.5/junit-platform-engine-1.10.5.jar", "$repo/org/mockito/mockito-core/5.11.0/mockito-core-5.11.0.jar", "$repo/org/mockito/mockito-junit-jupiter/5.11.0/mockito-junit-jupiter-5.11.0.jar", "$repo/net/bytebuddy/byte-buddy/1.14.19/byte-buddy-1.14.19.jar", "$repo/net/bytebuddy/byte-buddy-agent/1.14.19/byte-buddy-agent-1.14.19.jar", "$repo/org/objenesis/objenesis/3.3/objenesis-3.3.jar", "$repo/org/assertj/assertj-core/3.25.3/assertj-core-3.25.3.jar", "$repo/org/springframework/spring-test/6.1.14/spring-test-6.1.14.jar", "$repo/org/springframework/boot/spring-boot-test/3.3.5/spring-boot-test-3.3.5.jar", "$repo/com/h2database/h2/2.2.224/h2-2.2.224.jar", "$repo/org/mybatis/mybatis-spring/3.0.3/mybatis-spring-3.0.3.jar", "$repo/com/baomidou/mybatis-plus-spring-boot-autoconfigure/3.5.7/mybatis-plus-spring-boot-autoconfigure-3.5.7.jar", "$repo/jakarta/validation/jakarta.validation-api/3.0.2/jakarta.validation-api-3.0.2.jar" ) -join ';' $cp = "$mainOut;$baseCp;$testJars" $files = Get-ChildItem -Recurse -Filter *.java -Path "$root\crm-customer\src\test\java", "$root\crm-opportunity\src\test\java" | Sort-Object FullName | ForEach-Object { '"' + ($_.FullName -replace '\\', '/') + '"' } $lines = @( '-encoding', 'UTF-8', '-source', '17', '-target', '17', '-nowarn', '-Xlint:none', '-sourcepath', "`"$root/crm-customer/src/test/java;$root/crm-opportunity/src/test/java`"", '-cp', "`"$cp`"", '-d', "`"$out`"" ) + $files [IO.File]::WriteAllText("$root\.scratch\javac-test-args.txt", ($lines -join "`r`n") + "`r`n", (New-Object System.Text.UTF8Encoding($false))) "TESTFILES=$($files.Count)"