本文整理汇总了Java中com.intellij.psi.util.PsiMethodUtil.hasMainMethod方法的典型用法代码示例。如果您正苦于以下问题:Java PsiMethodUtil.hasMainMethod方法的具体用法?Java PsiMethodUtil.hasMainMethod怎么用?Java PsiMethodUtil.hasMainMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.intellij.psi.util.PsiMethodUtil
的用法示例。
在下文中一共展示了PsiMethodUtil.hasMainMethod方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: isEntryPoint
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
public boolean isEntryPoint(@NotNull PsiElement element) {
final Project project = element.getProject();
final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(project);
if (element instanceof PsiMethod && isAddMainsEnabled() && PsiClassImplUtil.isMainOrPremainMethod((PsiMethod)element)) {
return true;
}
if (element instanceof PsiClass) {
PsiClass aClass = (PsiClass)element;
final PsiClass applet = psiFacade.findClass("java.applet.Applet", GlobalSearchScope.allScope(project));
if (isAddAppletEnabled() && applet != null && aClass.isInheritor(applet, true)) {
return true;
}
final PsiClass servlet = psiFacade.findClass("javax.servlet.Servlet", GlobalSearchScope.allScope(project));
if (isAddServletEnabled() && servlet != null && aClass.isInheritor(servlet, true)) {
return true;
}
if (isAddMainsEnabled() && PsiMethodUtil.hasMainMethod(aClass)) return true;
}
if (element instanceof PsiModifierListOwner) {
final EntryPointsManager entryPointsManager = EntryPointsManager.getInstance(project);
if (entryPointsManager.isEntryPoint(element)) return true;
}
for (EntryPoint extension : myExtensions) {
if (extension.isEntryPoint(element)) {
return true;
}
}
final ImplicitUsageProvider[] implicitUsageProviders = Extensions.getExtensions(ImplicitUsageProvider.EP_NAME);
for (ImplicitUsageProvider provider : implicitUsageProviders) {
if (provider.isImplicitUsage(element)) return true;
}
return false;
}
示例2: checkClass
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
protected boolean checkClass(@NotNull HeaderValuePart valuePart, @NotNull PsiClass aClass, @NotNull AnnotationHolder holder) {
if (!PsiMethodUtil.hasMainMethod(aClass)) {
holder.createErrorAnnotation(valuePart.getHighlightingRange(), ManifestBundle.message("header.main.class.invalid"));
return true;
}
return false;
}
示例3: checkConfiguration
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
@Override
public void checkConfiguration() throws RuntimeConfigurationException {
JavaParametersUtil.checkAlternativeJRE(this);
final JavaRunConfigurationModule configurationModule = getConfigurationModule();
final PsiClass psiClass = configurationModule.checkModuleAndClassName(MAIN_CLASS_NAME, ExecutionBundle.message("no.main.class.specified.error.text"));
if (!PsiMethodUtil.hasMainMethod(psiClass)) {
throw new RuntimeConfigurationWarning(ExecutionBundle.message("main.method.not.found.in.class.error.message", MAIN_CLASS_NAME));
}
ProgramParametersUtil.checkWorkingDirectoryExist(this, getProject(), configurationModule.getModule());
JavaRunConfigurationExtensionManager.checkConfigurationIsValid(this);
}
示例4: checkConfiguration
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
public void checkConfiguration() throws RuntimeConfigurationException {
JavaParametersUtil.checkAlternativeJRE(this);
final JavaRunConfigurationModule configurationModule = getConfigurationModule();
final PsiClass psiClass = configurationModule.checkModuleAndClassName(MAIN_CLASS_NAME, ExecutionBundle.message("no.main.class.specified.error.text"));
if (!PsiMethodUtil.hasMainMethod(psiClass)) {
throw new RuntimeConfigurationWarning(ExecutionBundle.message("main.method.not.found.in.class.error.message", MAIN_CLASS_NAME));
}
ProgramParametersUtil.checkWorkingDirectoryExist(this, getProject(), configurationModule.getModule());
JavaRunConfigurationExtensionManager.checkConfigurationIsValid(this);
}
示例5: checkConfiguration
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
@Override
public void checkConfiguration() throws RuntimeConfigurationException
{
JavaParametersUtil.checkAlternativeJRE(this);
final JavaRunConfigurationModule configurationModule = getConfigurationModule();
final PsiClass psiClass = configurationModule.checkModuleAndClassName(MAIN_CLASS_NAME, ExecutionBundle.message("no.main.class.specified.error.text"));
if(!PsiMethodUtil.hasMainMethod(psiClass))
{
throw new RuntimeConfigurationWarning(ExecutionBundle.message("main.method.not.found.in.class.error.message", MAIN_CLASS_NAME));
}
ProgramParametersUtil.checkWorkingDirectoryExist(this, getProject(), configurationModule.getModule());
JavaRunConfigurationExtensionManager.checkConfigurationIsValid(this);
}
示例6: canBeRunByGroovy
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
public static boolean canBeRunByGroovy(final PsiClass psiClass) {
return psiClass instanceof GroovyScriptClass ||
isRunnable(psiClass) ||
psiClass instanceof GrTypeDefinition && PsiMethodUtil.hasMainMethod(psiClass);
}
示例7: isContext
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
@Override
protected boolean isContext(ConfigurationContext context) {
return super.isContext(context) && !isTestScope &&
psiClass != null && PsiMethodUtil.hasMainMethod(psiClass);
}
示例8: isEntryPoint
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
public boolean isEntryPoint(@NotNull PsiElement element) {
final Project project = element.getProject();
final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(project);
if (element instanceof PsiMethod && isAddMainsEnabled() && PsiClassImplUtil.isMainOrPremainMethod((PsiMethod)element)) {
return true;
}
if (element instanceof PsiClass) {
PsiClass aClass = (PsiClass)element;
/*
if (aClass.isAnnotationType()) {
return true;
}
if (aClass.isEnum()) {
return true;
}
*/
final PsiClass applet = psiFacade.findClass("java.applet.Applet", GlobalSearchScope.allScope(project));
if (isAddAppletEnabled() && applet != null && aClass.isInheritor(applet, true)) {
return true;
}
final PsiClass servlet = psiFacade.findClass("javax.servlet.Servlet", GlobalSearchScope.allScope(project));
if (isAddServletEnabled() && servlet != null && aClass.isInheritor(servlet, true)) {
return true;
}
if (isAddMainsEnabled() && PsiMethodUtil.hasMainMethod(aClass)) return true;
}
if (element instanceof PsiModifierListOwner) {
final EntryPointsManager entryPointsManager = EntryPointsManager.getInstance(project);
if (entryPointsManager.isEntryPoint((PsiModifierListOwner)element)) return true;
//if (AnnotationUtil
// .checkAnnotatedUsingPatterns((PsiModifierListOwner)element, entryPointsManager.ADDITIONAL_ANNOTATIONS) ||
// AnnotationUtil
// .checkAnnotatedUsingPatterns((PsiModifierListOwner)element, entryPointsManager.getAdditionalAnnotations())) {
// return true;
//}
}
for (EntryPoint extension : myExtensions) {
if (extension.isEntryPoint(element)) {
return true;
}
}
final ImplicitUsageProvider[] implicitUsageProviders = Extensions.getExtensions(ImplicitUsageProvider.EP_NAME);
for (ImplicitUsageProvider provider : implicitUsageProviders) {
if (provider.isImplicitUsage(element)) return true;
}
return false;
}
示例9: isEntryPoint
import com.intellij.psi.util.PsiMethodUtil; //导入方法依赖的package包/类
public boolean isEntryPoint(@NotNull PsiElement element)
{
final Project project = element.getProject();
final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(project);
if(element instanceof PsiMethod && isAddMainsEnabled() && PsiClassImplUtil.isMainOrPremainMethod((PsiMethod)
element))
{
return true;
}
if(element instanceof PsiClass)
{
PsiClass aClass = (PsiClass) element;
final PsiClass applet = psiFacade.findClass("java.applet.Applet", GlobalSearchScope.allScope(project));
if(isAddAppletEnabled() && applet != null && aClass.isInheritor(applet, true))
{
return true;
}
final PsiClass servlet = psiFacade.findClass("javax.servlet.Servlet", GlobalSearchScope.allScope(project));
if(isAddServletEnabled() && servlet != null && aClass.isInheritor(servlet, true))
{
return true;
}
if(isAddMainsEnabled() && PsiMethodUtil.hasMainMethod(aClass))
{
return true;
}
}
if(element instanceof PsiModifierListOwner)
{
final EntryPointsManager entryPointsManager = EntryPointsManager.getInstance(project);
if(entryPointsManager.isEntryPoint(element))
{
return true;
}
}
for(EntryPoint extension : myExtensions)
{
if(extension.isEntryPoint(element))
{
return true;
}
}
final ImplicitUsageProvider[] implicitUsageProviders = Extensions.getExtensions(ImplicitUsageProvider.EP_NAME);
for(ImplicitUsageProvider provider : implicitUsageProviders)
{
if(provider.isImplicitUsage(element))
{
return true;
}
}
return false;
}