Я столкнулся с этой проблемой (динамические выражения). Идите так, что может быть не самым приятным способом, но он работает. Вместо того, чтобы бросать исключение, вы можете, конечно, вернуть нуль или ложь или что угодно. Надеюсь, это поможет.
function eval_expression($expression)
{
ob_start();
eval('echo (' . $expression . ');');
$result = ob_get_contents();
ob_end_clean();
if (strpos($result, 'Warning: Division by zero')!==false)
{
throw new Exception('Division by zero');
}
else return (float)$result;
}
Вы можете просто использовать каталог изменений для вашего конкретного каталога.
cd C:\Users\myusername\OneDrive\Documents\
javac HelloWorld.java