Buggy code:
public final class ManagedDeployableContainer extends CommonDeployableContainer < ManagedContainerConfiguration > { static final String TEMP_CONTAINER_DIRECTORY = "arquillian-temp-container" ; static final String CONFIG_DIR = "configuration" ; static final String SERVER_BASE_DIR = "standalone" ; static final String LOG_DIR = "log" ; static final String DATA_DIR = "data" ; private static final int PORT_RANGE_MIN = 1 ; private static final int PORT_RANGE_MAX = 65535 ; private final Logger log = Logger . getLogger ( ManagedDeployableContainer . class . getName ( ) ) ; private Thread shutdownThread ; private Process process ; @ Override public Class < ManagedContainerConfiguration > getConfigurationClass ( ) { } private static boolean processHasDied ( final Process process ) { } @ Override protected void startInternal ( ) throws LifecycleException { ManagedContainerConfiguration config = getContainerConfiguration ( ) ; if ( isServerRunning ( ) ) { if ( config . isAllowConnectingToRunningServer ( ) ) { return ; } else { failDueToRunning ( ) ; } } try { final String jbossHome = config . getJbossHome ( ) ; File jbossHomeDir = new File ( jbossHome ) . getCanonicalFile ( ) ; if ( ( jbossHomeDir . isDirectory ( ) ) == false ) throw new IllegalStateException ( ( "Cannot<seq2seq4repair_space>find:<seq2seq4repair_space>" + jbossHomeDir ) ) ; String modulesPath = config . getModulePath ( ) ; if ( ( modulesPath == null ) || ( modulesPath . isEmpty ( ) ) ) { modulesPath = ( jbossHome + ( File . separatorChar ) ) + "modules" ; } String bundlesPath = config . getBundlePath ( ) ; if ( ( bundlesPath == null ) || ( bundlesPath . isEmpty ( ) ) ) { bundlesPath = ( jbossHome + ( File . separatorChar ) ) + "bundles" ; } final String additionalJavaOpts = config . getJavaVmArguments ( ) ; File modulesJar = new File ( ( ( jbossHome + ( File . separatorChar ) ) + "jboss-modules.jar" ) ) ; if ( ! ( modulesJar . exists ( ) ) ) throw new IllegalStateException ( ( "Cannot<seq2seq4repair_space>find:<seq2seq4repair_space>" + modulesJar ) ) ; List < String > cmd = new ArrayList < String > ( ) ; String javaExec = ( ( ( ( config . getJavaHome ( ) ) + ( File . separatorChar ) ) + "bin" ) + ( File . separatorChar ) ) + "java" ; if ( config . getJavaHome ( ) . contains ( "<seq2seq4repair_space>" ) ) { javaExec = ( "\"" + javaExec ) + "\"" ; } cmd . add ( javaExec ) ; if ( additionalJavaOpts != null ) { for ( String opt : additionalJavaOpts . split ( "\\s+" ) ) { cmd . add ( opt ) ; } } if ( config . isEnableAssertions ( ) ) { cmd . add ( "-ea" ) ; } String serverBaseDir = getSystemPropertyValue ( cmd , "jboss.server.base.dir" , ( ( jbossHome + ( File . separatorChar ) ) + ( ManagedDeployableContainer . SERVER_BASE_DIR ) ) ) ; if ( ( config . isSetupCleanServerBaseDir ( ) ) || ( ( config . getCleanServerBaseDir ( ) ) != null ) ) { serverBaseDir = ManagedDeployableContainer . setupCleanServerDirectories ( serverBaseDir , jbossHome , config . getCleanServerBaseDir ( ) ) . getAbsolutePath ( ) ; replaceSystemPropertyValue ( cmd , "jboss.server.base.dir" , serverBaseDir ) ; } <START_BUG> final String bootLogFileDefaultValue = ( ( ( serverBaseDir + ( File . separatorChar ) ) + ( ManagedDeployableContainer . LOG_DIR ) ) + ( File . separatorChar ) ) + "boot.log" ; <END_BUG> final String loggingConfigurationDefaultValue = ( ( ( serverBaseDir + ( File . separatorChar ) ) + ( ManagedDeployableContainer . CONFIG_DIR ) ) + ( File . separatorChar ) ) + "logging.properties" ; cmd . add ( ( "-Djboss.home.dir=" + jbossHome ) ) ; cmd . add ( ( "-Dorg.jboss.boot.log.file=" + ( getSystemPropertyValue ( cmd , "org.jboss.boot.log.file" , ManagedDeployableContainer . getFile ( bootLogFileDefaultValue , jbossHome ) . getAbsolutePath ( ) ) ) ) ) ; cmd . add ( ( "-Dlogging.configuration=" + ( getSystemPropertyValue ( cmd , "logging.configuration" , ManagedDeployableContainer . getFile ( loggingConfigurationDefaultValue , jbossHome ) . toURI ( ) . toString ( ) ) ) ) ) ; cmd . add ( ( "-Djboss.bundles.dir=" + bundlesPath ) ) ; cmd . add ( "-jar" ) ; cmd . add ( modulesJar . getAbsolutePath ( ) ) ; cmd . add ( "-mp" ) ; cmd . add ( modulesPath ) ; cmd . add ( "org.jboss.as.standalone" ) ; cmd . add ( "-server-config" ) ; cmd . add ( config . getServerConfig ( ) ) ; if ( config . isAdminOnly ( ) ) cmd . add ( "--admin-only" ) ; this . waitOnPorts ( ) ; log . info ( ( "Starting<seq2seq4repair_space>container<seq2seq4repair_space>with:<seq2seq4repair_space>" + ( cmd . toString ( ) ) ) ) ; ProcessBuilder processBuilder = new ProcessBuilder ( cmd ) ; processBuilder . redirectErrorStream ( true ) ; process = processBuilder . start ( ) ; new Thread ( new ManagedDeployableContainer . ConsoleConsumer ( ) ) . start ( ) ; final Process proc = process ; shutdownThread = new Thread ( new Runnable ( ) { @ Override public void run ( ) { if ( proc != null ) { proc . destroy ( ) ; try { proc . waitFor ( ) ; } catch ( InterruptedException e ) { throw new RuntimeException ( e ) ; } } } } ) ; Runtime . getRuntime ( ) . addShutdownHook ( shutdownThread ) ; long startupTimeout = getContainerConfiguration ( ) . getStartupTimeoutInSeconds ( ) ; long timeout = startupTimeout * 1000 ; boolean serverAvailable = false ; long sleep = 1000 ; while ( ( timeout > 0 ) && ( serverAvailable == false ) ) { serverAvailable = getManagementClient ( ) . isServerInRunningState ( ) ; if ( ! serverAvailable ) { if ( ManagedDeployableContainer . processHasDied ( proc ) ) break ; Thread . sleep ( sleep ) ; timeout -= sleep ;

Fix:
final String bootLogFileDefaultValue = ( ( ( serverBaseDir + ( File . separatorChar ) ) + ( ManagedDeployableContainer . LOG_DIR ) ) + ( File . separatorChar ) ) + "server.log" ;