• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java VirtualFileFilter类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.intellij.openapi.vfs.VirtualFileFilter的典型用法代码示例。如果您正苦于以下问题:Java VirtualFileFilter类的具体用法?Java VirtualFileFilter怎么用?Java VirtualFileFilter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



VirtualFileFilter类属于com.intellij.openapi.vfs包,在下文中一共展示了VirtualFileFilter类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: checkHighlighting

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
private void checkHighlighting(ExpectedHighlightingData data, String filePath) {
  data.init();

  PsiDocumentManager.getInstance(getProject()).commitAllDocuments();
  getFile().getText(); //to load text
  myJavaFilesFilter.allowTreeAccessForFile(getVFile());
  getJavaFacade().setAssertOnFileLoadingFilter(myJavaFilesFilter, myTestRootDisposable); // check repository work

  try {
    Collection<HighlightInfo> infos = doHighlighting();

    data.checkResult(infos, getEditor().getDocument().getText(), filePath);
  }
  finally {
    getJavaFacade().setAssertOnFileLoadingFilter(VirtualFileFilter.NONE, myTestRootDisposable);
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:LightDaemonAnalyzerTestCase.java


示例2: testAnnotationIndex

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testAnnotationIndex() throws Exception {
  getJavaFacade().setAssertOnFileLoadingFilter(new VirtualFileFilter() {
    @Override
    public boolean accept(final VirtualFile file) {
      return !"package-info.java".equals(file.getName());
    }
  }, myTestRootDisposable);

  final PsiClass annotationTypeClass = findClass("annotations.AnnotationType");
  assertTrue(annotationTypeClass.isAnnotationType());

  final Collection<PsiMember> all = AnnotatedMembersSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();

  assertEquals(2, all.size());
  Set<String> correctNames = new HashSet<String>(Arrays.asList("AnnotatedClass", "correctMethod"));
  for (PsiMember member : all) {
    assertTrue(correctNames.contains(member.getName()));
  }

  final Collection<PsiPackage> packages =
    AnnotatedPackagesSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();
  assertEquals(1, packages.size());
  assertEquals("annotated", packages.iterator().next().getQualifiedName());

  tearDownLoadingFilter();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:27,代码来源:Src15RepositoryUseTest.java


示例3: accept

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected boolean accept(@NotNull final PsiDirectory dir, @NotNull final Processor<VirtualFile> processor) {
  final Project project = dir.getProject();
  final ProjectFileIndex index = ProjectRootManager.getInstance(project).getFileIndex();
  //we should analyze generated source files only if the action is explicitly invoked for a directory located under generated roots
  final boolean processGeneratedFiles = isInGeneratedSources(dir.getVirtualFile(), project);
  return VfsUtilCore.iterateChildrenRecursively(dir.getVirtualFile(), VirtualFileFilter.ALL, new ContentIterator() {
    @Override
    @SuppressWarnings({"SimplifiableIfStatement"})
    public boolean processFile(@NotNull final VirtualFile fileOrDir) {
      if (!myIncludeTestSource && index.isInTestSourceContent(fileOrDir)) return true;
      if (!processGeneratedFiles && isInGeneratedSources(fileOrDir, project)) return true;
      if (!fileOrDir.isDirectory()) {
        return processor.process(fileOrDir);
      }
      return true;
    }
  });
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:AnalysisScope.java


示例4: registerScopeFilter

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public static void registerScopeFilter(@NotNull AbstractLayoutCodeProcessor processor, @Nullable final SearchScope scope) {
  if (scope == null) {
    return;
  }

  processor.addFileFilter(new VirtualFileFilter() {
    @Override
    public boolean accept(@NotNull VirtualFile file) {
      if (scope instanceof LocalSearchScope) {
        return ((LocalSearchScope)scope).isInScope(file);
      }
      if (scope instanceof GlobalSearchScope) {
        return ((GlobalSearchScope)scope).contains(file);
      }

      return false;
    }
  });
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:20,代码来源:ReformatCodeAction.java


示例5: doResolve

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected PsiElement doResolve(PsiFile psiFile) {
  final PsiPolyVariantReference ref = PyResolveTestCase.findReferenceByMarker(psiFile);
  final PsiManagerImpl psiManager = (PsiManagerImpl)myFixture.getPsiManager();
  psiManager.setAssertOnFileLoadingFilter(new VirtualFileFilter() {
    @Override
    public boolean accept(VirtualFile file) {
      FileType fileType = file.getFileType();
      return fileType == PythonFileType.INSTANCE;
    }
  }, myTestRootDisposable);
  final ResolveResult[] resolveResults = ref.multiResolve(false);
  psiManager.setAssertOnFileLoadingFilter(VirtualFileFilter.NONE, myTestRootDisposable);
  if (resolveResults.length == 0) {
    return null;
  }
  return resolveResults[0].isValidResult() ? resolveResults[0].getElement() : null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:PyMultiFileResolveTestCase.java


示例6: testConvert

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testConvert() throws IOException {
  final String testDataPath = AndroidTestCase.getTestDataPath() + "/conversion/proguardOptions";
  final File testData = new File(testDataPath, "before");
  final File tempDir = FileUtil.createTempDirectory("project", null);
  FileUtil.copyDir(testData, tempDir);
  ProjectConversionTestUtil.convert(tempDir.getAbsolutePath());
  final File expectedDataDir = new File(testDataPath, "after");
  PlatformTestUtil.assertDirectoriesEqual(
    LocalFileSystem.getInstance().refreshAndFindFileByIoFile(expectedDataDir),
    LocalFileSystem.getInstance().refreshAndFindFileByIoFile(tempDir),
    new VirtualFileFilter() {
      @Override
      public boolean accept(VirtualFile file) {
        return !file.getName().startsWith(ProjectConversionUtil.PROJECT_FILES_BACKUP);
      }
    });
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:18,代码来源:AndroidConversionTest.java


示例7: testConvert

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testConvert() throws IOException {
  String testDataPath = "plugins/google-app-engine/testData/conversion/appEngineFacet/";
  File testData = PathManagerEx.findFileUnderProjectHome(testDataPath + "before", getClass());
  File tempDir = FileUtil.createTempDirectory("app-engine-project", null);
  FileUtil.copyDir(testData, tempDir);
  ProjectConversionTestUtil.convert(tempDir.getAbsolutePath());
  File expectedDataDir = PathManagerEx.findFileUnderProjectHome(testDataPath + "after", getClass());
  PlatformTestUtil.assertDirectoriesEqual(LocalFileSystem.getInstance().refreshAndFindFileByIoFile(expectedDataDir),
                                          LocalFileSystem.getInstance().refreshAndFindFileByIoFile(tempDir),
                                          new VirtualFileFilter() {
                                            @Override
                                            public boolean accept(VirtualFile file) {
                                              return !file.getName().startsWith(ProjectConversionUtil.PROJECT_FILES_BACKUP);
                                            }
                                          });
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:17,代码来源:AppEngineFacetConverterTest.java


示例8: nonLocalFileLookup

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
@Nullable
public static FileLookupData nonLocalFileLookup(
    String originalLabel,
    @Nullable BuildFile containingFile,
    QuoteType quoteType,
    PathFormat pathFormat) {
  if (originalLabel.indexOf(':') != -1) {
    // it's a package-local reference
    return null;
  }
  // handle the single '/' case by calling twice.
  String relativePath = StringUtil.trimStart(StringUtil.trimStart(originalLabel, "/"), "/");
  if (relativePath.startsWith("/")) {
    return null;
  }
  boolean onlyDirectories = pathFormat != PathFormat.NonLocalWithoutInitialBackslashes;
  VirtualFileFilter filter = vf -> !onlyDirectories || vf.isDirectory();
  return new FileLookupData(
      originalLabel, containingFile, null, relativePath, pathFormat, quoteType, filter);
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:21,代码来源:FileLookupData.java


示例9: packageLocalFileLookup

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
@Nullable
public static FileLookupData packageLocalFileLookup(
    String originalLabel,
    StringLiteral element,
    @Nullable BuildFile basePackage,
    @Nullable VirtualFileFilter fileFilter) {
  if (basePackage == null) {
    return null;
  }
  Label packageLabel = basePackage.getPackageLabel();
  if (packageLabel == null) {
    return null;
  }
  String basePackagePath = packageLabel.blazePackage().relativePath();
  String filePath = basePackagePath + "/" + LabelUtils.getRuleComponent(originalLabel);
  return new FileLookupData(
      originalLabel,
      basePackage,
      basePackagePath,
      filePath,
      PathFormat.PackageLocal,
      element.getQuoteType(),
      fileFilter);
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:25,代码来源:FileLookupData.java


示例10: FileLookupData

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
private FileLookupData(
    String originalLabel,
    @Nullable BuildFile containingFile,
    @Nullable String containingPackage,
    String filePathFragment,
    PathFormat pathFormat,
    QuoteType quoteType,
    @Nullable VirtualFileFilter fileFilter) {

  this.originalLabel = originalLabel;
  this.containingFile = containingFile;
  this.containingPackage = containingPackage;
  this.fileFilter = fileFilter;
  this.filePathFragment = filePathFragment;
  this.pathFormat = pathFormat;
  this.quoteType = quoteType;

  assert (pathFormat != PathFormat.PackageLocal
      || (containingPackage != null && containingFile != null));
}
 
开发者ID:bazelbuild,项目名称:intellij,代码行数:21,代码来源:FileLookupData.java


示例11: registerDetectors

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
@Override
public final void registerDetectors( FacetDetectorRegistry<PolygeneFacetConfiguration> registry )
{
    registry.registerOnTheFlyDetector(
        StdFileTypes.JAVA, VirtualFileFilter.ALL, new HasPolygeneImportPackageCondition(),
        new FacetDetector<PsiFile, PolygeneFacetConfiguration>( "PolygeneFacetDetector" )
        {
            @Override
            public PolygeneFacetConfiguration detectFacet( PsiFile source,
                                                       Collection<PolygeneFacetConfiguration> existingConfigurations )
            {
                if( !existingConfigurations.isEmpty() )
                {
                    return existingConfigurations.iterator().next();
                }

                return createDefaultConfiguration();
            }
        }
    );
}
 
开发者ID:apache,项目名称:polygene-java,代码行数:22,代码来源:PolygeneFacetType.java


示例12: createCodeInsightFixture

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected CodeInsightTestFixture createCodeInsightFixture(final String relativeTestDataPath)
    throws Exception {
  final String testDataPath = new File(getTestDataPath(), relativeTestDataPath).getAbsolutePath();
  final CodeInsightTestFixture codeInsightFixture =
      JavaTestFixtureFactory.getFixtureFactory().createCodeInsightFixture(myProjectFixture);
  codeInsightFixture.setTestDataPath(testDataPath);
  final TempDirTestFixture tempDir = codeInsightFixture.getTempDirFixture();
  myModuleBuilder.addSourceContentRoot(tempDir.getTempDirPath());
  codeInsightFixture.setUp();
  final VirtualFile dir = LocalFileSystem.getInstance().refreshAndFindFileByPath(testDataPath);
  Assert.assertNotNull("Test data directory not found: " + testDataPath, dir);
  VfsUtil.processFilesRecursively(dir, new CommonProcessors.CollectProcessor<VirtualFile>());
  dir.refresh(false, true);
  tempDir.copyAll(
      testDataPath,
      "",
      new VirtualFileFilter() {
        @Override
        public boolean accept(VirtualFile file) {
          return !file.getName().contains("_after");
        }
      });
  return codeInsightFixture;
}
 
开发者ID:GoogleCloudPlatform,项目名称:google-cloud-intellij,代码行数:25,代码来源:AppEngineCodeInsightTestCase.java


示例13: testConvert

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected void testConvert(String testDataPath) throws IOException {
  // setup test data
  File testDataRoot = new File(AppEngineCodeInsightTestCase.getTestDataPath(), testDataPath);
  File testData = new File(testDataRoot, BEFORE_PATH);
  File tempDir = FileUtil.createTempDirectory(testDataPath, null);
  FileUtil.copyDir(testData, tempDir);
  File expectedDataDir = new File(testDataRoot, AFTER_PATH);

  // run the conversion operation
  ProjectConversionTestUtil.convert(tempDir.getAbsolutePath());

  PlatformTestUtil.assertDirectoriesEqual(
      LocalFileSystem.getInstance().refreshAndFindFileByIoFile(expectedDataDir),
      LocalFileSystem.getInstance().refreshAndFindFileByIoFile(tempDir),
      new VirtualFileFilter() {
        @Override
        public boolean accept(VirtualFile file) {
          // ignore any generated backup files
          return !file.getName().startsWith(ProjectConversionUtil.PROJECT_FILES_BACKUP);
        }
      });
}
 
开发者ID:GoogleCloudPlatform,项目名称:google-cloud-intellij,代码行数:23,代码来源:BaseConverterTest.java


示例14: testAnnotationIndex

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testAnnotationIndex() throws Exception {
  getJavaFacade().setAssertOnFileLoadingFilter(new VirtualFileFilter() {
    @Override
    public boolean accept(final VirtualFile file) {
      return !"package-info.java".equals(file.getName());
    }
  });

  final PsiClass annotationTypeClass = findClass("annotations.AnnotationType");
  assertTrue(annotationTypeClass.isAnnotationType());

  final Collection<PsiMember> all = AnnotatedMembersSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();

  assertEquals(2, all.size());
  Set<String> correctNames = new HashSet<String>(Arrays.asList("AnnotatedClass", "correctMethod"));
  for (PsiMember member : all) {
    assertTrue(correctNames.contains(member.getName()));
  }

  final Collection<PsiPackage> packages =
    AnnotatedPackagesSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();
  assertEquals(1, packages.size());
  assertEquals("annotated", packages.iterator().next().getQualifiedName());

  tearDownLoadingFilter();
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:27,代码来源:Src15RepositoryUseTest.java


示例15: accept

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected void accept(@NotNull final PsiDirectory dir, @NotNull final PsiElementVisitor visitor, final boolean needReadAction) {
  final Project project = dir.getProject();
  final PsiManager psiManager = PsiManager.getInstance(project);
  final ProjectFileIndex index = ProjectRootManager.getInstance(project).getFileIndex();
  VfsUtilCore.iterateChildrenRecursively(dir.getVirtualFile(), VirtualFileFilter.ALL, new ContentIterator() {
    @Override
    @SuppressWarnings({"SimplifiableIfStatement"})
    public boolean processFile(@NotNull final VirtualFile fileOrDir) {
      if (!myIncludeTestSource && index.isInTestSourceContent(fileOrDir)) return true;
      if (!fileOrDir.isDirectory()) {
        return AnalysisScope.processFile(fileOrDir, visitor, psiManager, needReadAction);
      }
      return true;
    }
  });
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:17,代码来源:AnalysisScope.java


示例16: accept

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
protected boolean accept(@Nonnull final PsiDirectory dir, @Nonnull final Processor<VirtualFile> processor) {
  final Project project = dir.getProject();
  final ProjectFileIndex index = ProjectRootManager.getInstance(project).getFileIndex();
  //we should analyze generated source files only if the action is explicitly invoked for a directory located under generated roots
  final boolean processGeneratedFiles = isInGeneratedSources(dir.getVirtualFile(), project);
  return VfsUtilCore.iterateChildrenRecursively(dir.getVirtualFile(), VirtualFileFilter.ALL, new ContentIterator() {
    @Override
    @SuppressWarnings({"SimplifiableIfStatement"})
    public boolean processFile(@Nonnull final VirtualFile fileOrDir) {
      if (!myIncludeTestSource && index.isInTestSourceContent(fileOrDir)) return true;
      if (!processGeneratedFiles && isInGeneratedSources(fileOrDir, project)) return true;
      if (!fileOrDir.isDirectory()) {
        return processor.process(fileOrDir);
      }
      return true;
    }
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:19,代码来源:AnalysisScope.java


示例17: testAnnotationIndex

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testAnnotationIndex() throws Exception {
  getJavaFacade().setAssertOnFileLoadingFilter(new VirtualFileFilter() {
    @Override
    public boolean accept(final VirtualFile file) {
      return !"package-info.java".equals(file.getName());
    }
  }, null);

  final PsiClass annotationTypeClass = findClass("annotations.AnnotationType");
  assertTrue(annotationTypeClass.isAnnotationType());

  final Collection<PsiMember> all = AnnotatedMembersSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();

  assertEquals(2, all.size());
  Set<String> correctNames = new HashSet<String>(Arrays.asList("AnnotatedClass", "correctMethod"));
  for (PsiMember member : all) {
    assertTrue(correctNames.contains(member.getName()));
  }

  final Collection<PsiJavaPackage> packages =
    AnnotatedPackagesSearch.search(annotationTypeClass, GlobalSearchScope.moduleScope(myModule)).findAll();
  assertEquals(1, packages.size());
  assertEquals("annotated", packages.iterator().next().getQualifiedName());

  tearDownLoadingFilter();
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:27,代码来源:Src15RepositoryUseTest.java


示例18: testReplaceAnnotation

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
public void testReplaceAnnotation() throws Exception {
  //be sure not to load tree
  getJavaFacade().setAssertOnFileLoadingFilter(VirtualFileFilter.ALL, myTestRootDisposable);
  PsiClass aClass = myJavaFacade.findClass("Test", GlobalSearchScope.allScope(myProject));
  assertNotNull(aClass);
  final PsiAnnotation[] annotations = aClass.getModifierList().getAnnotations();
  assertEquals(1, annotations.length);
  assertEquals("A", annotations[0].getNameReferenceElement().getReferenceName());
  final PsiAnnotation newAnnotation = myJavaFacade.getElementFactory().createAnnotationFromText("@B", null);
  //here the tree is going to be loaded
  getJavaFacade().setAssertOnFileLoadingFilter(VirtualFileFilter.NONE, myTestRootDisposable);
  CommandProcessor.getInstance().executeCommand(myProject, new Runnable() {
    @Override
    public void run() {
      WriteCommandAction.runWriteCommandAction(null, new Runnable() {
        @Override
        public void run() {
          try {
            annotations[0].replace(newAnnotation);
          }
          catch (IncorrectOperationException e) {
            LOG.error(e);
          }
        }
      });
    }
  }, null, null);

  assertEquals("@B", aClass.getModifierList().getText());
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:31,代码来源:ModifyAnnotationsTest.java


示例19: buildNameToFileMap

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
private static HashMap<String, VirtualFile> buildNameToFileMap(VirtualFile[] files, @Nullable VirtualFileFilter filter) {
  HashMap<String, VirtualFile> map = new HashMap<String, VirtualFile>();
  for (VirtualFile file : files) {
    if (filter != null && !filter.accept(file)) continue;
    map.put(file.getName(), file);
  }
  return map;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:9,代码来源:PlatformTestUtil.java


示例20: assertDirectoriesEqual

import com.intellij.openapi.vfs.VirtualFileFilter; //导入依赖的package包/类
@SuppressWarnings("UnsafeVfsRecursion")
public static void assertDirectoriesEqual(VirtualFile dirAfter, VirtualFile dirBefore, @Nullable VirtualFileFilter fileFilter) throws IOException {
  FileDocumentManager.getInstance().saveAllDocuments();

  VirtualFile[] childrenAfter = dirAfter.getChildren();

  if (dirAfter.isInLocalFileSystem() && dirAfter.getFileSystem() != TempFileSystem.getInstance()) {
    File[] ioAfter = new File(dirAfter.getPath()).listFiles();
    shallowCompare(childrenAfter, ioAfter);
  }

  VirtualFile[] childrenBefore = dirBefore.getChildren();
  if (dirBefore.isInLocalFileSystem() && dirBefore.getFileSystem() != TempFileSystem.getInstance()) {
    File[] ioBefore = new File(dirBefore.getPath()).listFiles();
    shallowCompare(childrenBefore, ioBefore);
  }

  HashMap<String, VirtualFile> mapAfter = buildNameToFileMap(childrenAfter, fileFilter);
  HashMap<String, VirtualFile> mapBefore = buildNameToFileMap(childrenBefore, fileFilter);

  Set<String> keySetAfter = mapAfter.keySet();
  Set<String> keySetBefore = mapBefore.keySet();
  assertEquals(dirAfter.getPath(), keySetAfter, keySetBefore);

  for (String name : keySetAfter) {
    VirtualFile fileAfter = mapAfter.get(name);
    VirtualFile fileBefore = mapBefore.get(name);
    if (fileAfter.isDirectory()) {
      assertDirectoriesEqual(fileAfter, fileBefore, fileFilter);
    }
    else {
      assertFilesEqual(fileAfter, fileBefore);
    }
  }
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:36,代码来源:PlatformTestUtil.java



注:本文中的com.intellij.openapi.vfs.VirtualFileFilter类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java SoyTemplateRenderer类代码示例发布时间:2022-05-22
下一篇:
Java DummyJournalManager类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap