Sub AppStart (Args() As String)
Log("Project Compiler v1.00")
Dim inifolder As String = File.Combine(File.DirData("Anywhere Software"), "B4J")
If File.Exists(inifolder, "b4xV5.ini") = False Then
Log("Can't find B4J ini file.")
ExitApplication2(1)
End If
Dim javabin As String = GetSystemProperty("javabin", "")
Log($"javabin: ${javabin}"$)
If File.Exists(javabin, "javac.exe") = False Then
Log("Can't find javac.exe")
ExitApplication2(1)
End If
File.Copy(inifolder, "b4xV5.ini", inifolder, "inibackup.bak")
Dim ini As List = File.ReadList(inifolder, "b4xV5.ini")
For i = 0 To ini.Size - 1
Dim line As String = ini.Get(i)
If line.StartsWith("JavaBin") Then
ini.Set(i, $"JavaBin=${javabin}"$)
End If
Next
File.WriteList(inifolder, "b4xV5.ini", ini)
Try
Dim builder As String = File.Combine(GetSystemProperty("b4x", ""), "B4JBuilder.exe")
Dim shl As Shell
shl.Initialize("", builder, Args)
Dim res As ShellSyncResult = shl.RunSynchronous(60000)
Log($"Exit code: ${res.ExitCode}
StdOut: ${res.StdOut}
StdErr: ${res.StdErr}
"$)
Catch
Log(LastException)
End Try
File.Copy(inifolder, "inibackup.bak", inifolder, "b4xV5.ini")
End Sub