diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java index 900ed9507d92a92f8cd42f993b11e99fc1b216c6..5e43529ae75efe7e39820e9100e168f199581349 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/JavaDescriptorResolver.java @@ -610,10 +610,17 @@ public class JavaDescriptorResolver { if (containingClass != null) { return resolveClass(containingClass); } - - PsiJavaFile containingFile = (PsiJavaFile) psiClass.getContainingFile(); - String packageName = containingFile.getPackageName(); - return resolveNamespace(packageName); + + return resolveNamespace(packageNameOfClass(psiClass.getQualifiedName())); + } + + private static String packageNameOfClass(@NotNull String qualifiedName) { + int lastDot = qualifiedName.lastIndexOf('.'); + if (lastDot < 0) { + return ""; + } else { + return qualifiedName.substring(0, lastDot); + } } private List makeUninitializedTypeParameters(@NotNull DeclarationDescriptor containingDeclaration, @NotNull PsiTypeParameter[] typeParameters) {