當前位置: 首頁>>代碼示例>>Java>>正文


Java IProblem.PackageIsNotExpectedPackage方法代碼示例

本文整理匯總了Java中org.eclipse.jdt.core.compiler.IProblem.PackageIsNotExpectedPackage方法的典型用法代碼示例。如果您正苦於以下問題:Java IProblem.PackageIsNotExpectedPackage方法的具體用法?Java IProblem.PackageIsNotExpectedPackage怎麽用?Java IProblem.PackageIsNotExpectedPackage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.eclipse.jdt.core.compiler.IProblem的用法示例。


在下文中一共展示了IProblem.PackageIsNotExpectedPackage方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: isSyntaxLikeError

import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
public boolean isSyntaxLikeError(IProblem problem) {
    //Syntax issues are always reported
    if ((problem.getID() & IProblem.Syntax) != 0) {
        return true;
    }
    if (!isDefaultProject && problem.getID() == IProblem.PackageIsNotExpectedPackage) {
        return false;
    }
    //Type and Import issues are never reported
    if ((problem.getID() & IProblem.TypeRelated) != 0 || //
            (problem.getID() & IProblem.ImportRelated) != 0) {
        return false;
    }
    //For the rest, we need to cherry pick what is ignored or not
    switch (problem.getID()) {
        case IProblem.AbstractMethodMustBeImplemented:
        case IProblem.AmbiguousMethod:
        case IProblem.DanglingReference:
        case IProblem.MethodMustOverrideOrImplement:
        case IProblem.MissingReturnType:
        case IProblem.MissingTypeInConstructor:
        case IProblem.MissingTypeInLambda:
        case IProblem.MissingTypeInMethod:
        case IProblem.UndefinedConstructor:
        case IProblem.UndefinedField:
        case IProblem.UndefinedMethod:
        case IProblem.UndefinedName:
        case IProblem.UnresolvedVariable:
            return false;
        default:
            //We log problems for troubleshooting purposes
            String error = getError(problem);
            JavaLanguageServerPlugin.logInfo(problem.getMessage() + " is of type " + error);
    }
    return true;
}
 
開發者ID:eclipse,項目名稱:eclipse.jdt.ls,代碼行數:37,代碼來源:DiagnosticsHandler.java

示例2: checkPackageDeclaration

import org.eclipse.jdt.core.compiler.IProblem; //導入方法依賴的package包/類
private ICompilationUnit checkPackageDeclaration(String uri, ICompilationUnit unit) {
    if (unit.getResource() != null && unit.getJavaProject() != null && unit.getJavaProject().getProject().getName().equals(ProjectsManager.DEFAULT_PROJECT_NAME)) {
        try {
            CompilationUnit astRoot = SharedASTProvider.getInstance().getAST(unit, new NullProgressMonitor());
            IProblem[] problems = astRoot.getProblems();
            for (IProblem problem : problems) {
                if (problem.getID() == IProblem.PackageIsNotExpectedPackage) {
                    IResource file = unit.getResource();
                    boolean toRemove = file.isLinked();
                    if (toRemove) {
                        IPath path = file.getParent().getProjectRelativePath();
                        if (path.segmentCount() > 0 && JDTUtils.SRC.equals(path.segments()[0])) {
                            String packageNameResource = path.removeFirstSegments(1).toString().replace(JDTUtils.PATH_SEPARATOR, JDTUtils.PERIOD);
                            path = file.getLocation();
                            if (path != null && path.segmentCount() > 0) {
                                path = path.removeLastSegments(1);
                                String pathStr = path.toString().replace(JDTUtils.PATH_SEPARATOR, JDTUtils.PERIOD);
                                if (pathStr.endsWith(packageNameResource)) {
                                    toRemove = false;
                                }
                            }
                        }
                    }
                    if (toRemove) {
                        file.delete(true, new NullProgressMonitor());
                        sharedASTProvider.invalidate(unit);
                        unit.discardWorkingCopy();
                        unit = JDTUtils.resolveCompilationUnit(uri);
                        unit.becomeWorkingCopy(new NullProgressMonitor());
                        triggerValidation(unit);
                    }
                    break;
                }
            }

        } catch (CoreException e) {
            JavaLanguageServerPlugin.logException(e.getMessage(), e);
        }
    }
    return unit;
}
 
開發者ID:eclipse,項目名稱:eclipse.jdt.ls,代碼行數:42,代碼來源:DocumentLifeCycleHandler.java


注:本文中的org.eclipse.jdt.core.compiler.IProblem.PackageIsNotExpectedPackage方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。