javassist.Loader.addTranslator()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(4.7k)|赞(0)|评价(0)|浏览(169)

本文整理了Java中javassist.Loader.addTranslator()方法的一些代码示例,展示了Loader.addTranslator()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Loader.addTranslator()方法的具体详情如下:
包路径:javassist.Loader
类名称:Loader
方法名:addTranslator

Loader.addTranslator介绍

[英]Adds a translator, which is called whenever a class is loaded.
[中]添加一个转换器,在加载类时调用该转换器。

代码示例

代码示例来源:origin: sc.fiji/fiji-compat

  1. public static void main(String[] args) throws Throwable {
  2. Thread.currentThread().setContextClassLoader(MemoryProfiler.class.getClassLoader());
  3. if (args.length == 0) {
  4. System.err.println("Usage: java " + MemoryProfiler.class + " <main-class> [<argument>...]");
  5. System.exit(1);
  6. }
  7. String mainClass = args[0];
  8. String[] mainArgs = new String[args.length - 1];
  9. System.arraycopy(args, 1, mainArgs, 0, mainArgs.length);
  10. Loader loader = new Loader();
  11. loader.addTranslator(ClassPool.getDefault(), new MemoryProfiler());
  12. gc();
  13. loader.run(mainClass, mainArgs);
  14. }
  15. }

代码示例来源:origin: net.sf.jour/jour-instrument

  1. private void init(String configFileName, String[] path) {
  2. config = new Config(configFileName);
  3. translator = new InstrumentingTranslator(config);
  4. ClassPool pool = ClassPool.getDefault();
  5. try {
  6. for (int i = 0; (path != null) && (i < path.length); i++) {
  7. pool.appendClassPath(path[i]);
  8. }
  9. super.addTranslator(pool, translator);
  10. } catch (NotFoundException e) {
  11. throw new Error(e);
  12. } catch (CannotCompileException e) {
  13. throw new Error(e);
  14. }
  15. }

代码示例来源:origin: org.openimaj/core-aop-support

  1. protected static Loader run(final ClassLoader parent, ClassPool pool, MultiTransformClassFileTransformer tf,
  2. String mainClass, String[] args)
  3. throws Throwable
  4. {
  5. final Loader cl = new Loader(parent, pool);
  6. // Set the correct app name on OSX. Are there similar controls for other
  7. // platforms?
  8. System.setProperty("com.apple.mrj.application.apple.menu.about.name", mainClass);
  9. // skip args4j
  10. cl.delegateLoadingOf("org.apache.log4j.");
  11. cl.addTranslator(pool, tf);
  12. cl.run(mainClass, args);
  13. return cl;
  14. }

代码示例来源:origin: openimaj/openimaj

  1. protected static Loader run(final ClassLoader parent, ClassPool pool, MultiTransformClassFileTransformer tf,
  2. String mainClass, String[] args)
  3. throws Throwable
  4. {
  5. final Loader cl = new Loader(parent, pool);
  6. // Set the correct app name on OSX. Are there similar controls for other
  7. // platforms?
  8. System.setProperty("com.apple.mrj.application.apple.menu.about.name", mainClass);
  9. // skip args4j
  10. cl.delegateLoadingOf("org.apache.log4j.");
  11. cl.addTranslator(pool, tf);
  12. cl.run(mainClass, args);
  13. return cl;
  14. }

代码示例来源:origin: stackoverflow.com

  1. loader.addTranslator(ClassPool.getDefault(), new Profiler());
  2. try {
  3. if (args.length < 1) {

代码示例来源:origin: org.kie/lienzo-tests

  1. public void updateLoaderWithLienzoTranslator(final Loader loader, final Translator translator)
  2. {
  3. try
  4. {
  5. final LienzoMockitoClassTranslator lienzoTranslator = new LienzoMockitoClassTranslator(settings, translator);
  6. loader.addTranslator(ClassPool.getDefault(), lienzoTranslator);
  7. }
  8. catch (final NotFoundException e)
  9. {
  10. e.printStackTrace();
  11. }
  12. catch (final CannotCompileException e)
  13. {
  14. e.printStackTrace();
  15. }
  16. }
  17. }

代码示例来源:origin: com.ahome-it/lienzo-tests

  1. public void updateLoaderWithLienzoTranslator(final Loader loader, final Translator translator)
  2. {
  3. try
  4. {
  5. final LienzoMockitoClassTranslator lienzoTranslator = new LienzoMockitoClassTranslator(settings, translator);
  6. loader.addTranslator(ClassPool.getDefault(), lienzoTranslator);
  7. }
  8. catch (final NotFoundException e)
  9. {
  10. e.printStackTrace();
  11. }
  12. catch (final CannotCompileException e)
  13. {
  14. e.printStackTrace();
  15. }
  16. }
  17. }

代码示例来源:origin: sherif181/java-sequence-diagram-generator

  1. loader.addTranslator(pool, xlat);

代码示例来源:origin: sc.fiji/fiji-compat

  1. loader.addTranslator(pool, new PerformanceProfiler());
  2. } catch (Exception e) {
  3. e.printStackTrace();

代码示例来源:origin: org.openimaj/core-aop-support

  1. /**
  2. * Re-load the given class in a newly created {@link Loader} that is
  3. * configured to apply the given transform(s), and then run the main method.
  4. *
  5. * @param transformer
  6. * the transformer
  7. * @param clz
  8. * the class
  9. * @param args
  10. * the arguments
  11. * @throws Throwable
  12. * if an error occurs
  13. */
  14. public static void run(MultiTransformClassFileTransformer transformer, Class<?> clz, String[] args) throws Throwable {
  15. final ClassPool pool = new ClassPool();
  16. pool.appendSystemPath();
  17. final Loader loader = new Loader(pool);
  18. // skip args4j
  19. loader.delegateLoadingOf("org.apache.log4j.");
  20. loader.addTranslator(pool, transformer);
  21. loader.run(clz.getName(), args);
  22. }

代码示例来源:origin: openimaj/openimaj

  1. /**
  2. * Re-load the given class in a newly created {@link Loader} that is
  3. * configured to apply the given transform(s), and then run the main method.
  4. *
  5. * @param transformer
  6. * the transformer
  7. * @param clz
  8. * the class
  9. * @param args
  10. * the arguments
  11. * @throws Throwable
  12. * if an error occurs
  13. */
  14. public static void run(MultiTransformClassFileTransformer transformer, Class<?> clz, String[] args) throws Throwable {
  15. final ClassPool pool = new ClassPool();
  16. pool.appendSystemPath();
  17. final Loader loader = new Loader(pool);
  18. // skip args4j
  19. loader.delegateLoadingOf("org.apache.log4j.");
  20. loader.addTranslator(pool, transformer);
  21. loader.run(clz.getName(), args);
  22. }

相关文章