TeaVM vm = new TeaVMBuilder(target) .setClassLoader(classLoader) .setClassSource(classSource) .setDependencyAnalyzerFactory(dependencyAnalyzerFactory) .build();
public TeaVMBuilder(TeaVMTarget target) { this.target = target; classLoader = TeaVMBuilder.class.getClassLoader(); classSource = !isBootstrap() ? new ClasspathClassHolderSource(classLoader) : name -> null; }
JavaScriptTarget jsTarget = new JavaScriptTarget(); TeaVM vm = new TeaVMBuilder(jsTarget) .setClassLoader(classLoader) .setClassSource(classSource) .setDependencyAnalyzerFactory(FastDependencyAnalyzer::new) .build();
cancelled = false; log.info("Running TeaVM"); TeaVMBuilder vmBuilder = new TeaVMBuilder(prepareTarget()); CacheStatus cacheStatus; if (incremental) { log.info("Cache is missing"); vmBuilder.setClassLoader(classLoader).setClassSource(cachedClassSource); cacheStatus = cachedClassSource; } else { vmBuilder.setClassLoader(classLoader).setClassSource(new PreOptimizingClassHolderSource( new ClasspathClassHolderSource(classLoader))); cacheStatus = AlwaysStaleCacheStatus.INSTANCE; vmBuilder.setDependencyAnalyzerFactory(fastDependencyAnalysis ? FastDependencyAnalyzer::new : PreciseDependencyAnalyzer::new); vm = vmBuilder.build(); if (progressListener != null) { vm.setProgressListener(progressListener);
configuration.apply(jsTarget); TeaVM vm = new TeaVMBuilder(jsTarget) .setClassLoader(classLoader) .setClassSource(classSource) .build(); vm.setIncremental(false); configuration.apply(vm);
cancelled = false; log.info("Building JavaScript file"); TeaVMBuilder vmBuilder = new TeaVMBuilder(prepareTarget()); if (incremental) { cacheDirectory.mkdirs(); log.info("Cache is missing"); vmBuilder.setClassLoader(classLoader).setClassSource(cachedClassSource); } else { vmBuilder.setClassLoader(classLoader).setClassSource(new PreOptimizingClassHolderSource( new ClasspathClassHolderSource(classLoader))); vm = vmBuilder.build(); if (progressListener != null) { vm.setProgressListener(progressListener);