programing

편집기에 주 유형이 없습니다.

linuxpc 2023. 5. 26. 20:47
반응형

편집기에 주 유형이 없습니다.

Scala 웹 사이트에서 샘플 Scala 코드를 검토하고 있지만 실행하려고 할 때 성가신 오류가 발생했습니다.

여기 코드가 있습니다: http://www.scala-lang.org/node/45 .Eclipse에서 실행할 때 실행을 방해하는 'Editor is not main type' 메시지가 표시되었습니다.

제가 해야 할 일이 있습니까? 그 파일을 여러 개의 파일로 분할하는 것입니까?

Eclipse에서 프로젝트 속성 -> java 빌드 경로 -> 소스에 소스 폴더를 추가해야 합니다.그렇지 않으면 주() 함수가 프로젝트에 포함되지 않을 수 있습니다.

저는 이클립스와 스칼라에 대해 이 문제를 많이 가지고 있습니다.작업영역을 정리하고 프로젝트를 다시 작성하면 도움이 됩니다.

때때로 Eclipse는 어떤 파일을 다시 컴파일해야 하는지 올바르게 인식하지 못합니다.

편집: 코드는 이클립스에서 정상적으로 실행됩니다.

더 간단한 방법은 프로젝트를 닫고 다시 여는 것입니다.

.java 파일이 eclipse의 .src 폴더에 있는지 확인해야 합니다.제가 알아낼 때까지 똑같은 문제가 있었습니다.

작업하는 폴더가 빌드 경로에 추가되었는지 확인하십시오.

right-click의 폴더 더폴> -->build Path-->Use as source Folder

그리고 그것은 이제 발견해야 합니다.main거기에

이클립스의 아웃라인 사이드바에서 메인 기능을 실행해 볼 수 있습니다.

해결책

저도 같은 문제가 있었습니다.여러 가지 시도를 해봤습니다.그리고 저는 그것을 알게 되었습니다.

  1. 나의 .java 파일들이 연결되지 않았고,
  2. 'src' 폴더에 배치되지 않았습니다.

내가 한 일들:

프로젝트 속성 >> Java 빌드 경로 >> 소스

  • '제거' 옵션을 사용하여 비어 있던 원래 'src' 폴더를 삭제했습니다.
  • '폴더 추가' 옵션을 사용하여 소스 .java 파일이 포함된 소스 추가

이것으로 오류가 해결되었습니다.

Eclipse에서 프로젝트를 닫았다가 다시 여십시오.링크 문제가 발생할 수 있습니다.이것은 나의 문제를 해결했습니다.

빠른 해결책:

먼저 패키지를 제외합니다.소스 패키지 우클릭 >> 빌드 경로 >> 제외

그런 다음 다시 포함합니다.소스 패키지 우클릭 >> 빌드 경로 >> 포함

Java 프로젝트를 생성해야 하지만 이 파일을 해당 프로젝트의 패키지 파일에 넣으십시오. 그렇지 않으면 동일한 오류가 발생합니다.

여기에 이미지 설명 입력

그 코드는 유효합니다.스칼라크를 이용해 수작업으로 컴파일해 본 적이 있습니까?또한, 당신은 당신의 파일을 "주소록"이라고 불렀습니까? 모두 소문자로, 물건의 이름처럼?

또한 어떤 이유에서인지 이클립스는 메인 클래스를 "주소록"이 아닌 ".주소록"으로 설정했습니다.

당신은 당신의 파일을 만들어야 합니다.

오른쪽을 선택하면 파일 이름을 찾을 수 있습니다.

그 아래에서 src 폴더를 찾을 수 있습니다. 오른쪽 버튼을 클릭하여 선택 -->class 옵션을 클릭합니다.

그들은 당신의 파일을 참조하십시오.

.java 파일이 str 패키지 또는 다른 패키지에 있는지 확인합니다.메인 기능이 있는 java 파일이 모든 패키지 외부에 있는 경우 이 오류가 발생합니다.

유사한 문제에 직면한 적이 있으며 개요 보기에서 주 메서드를 마우스 오른쪽 버튼으로 클릭하여 이 문제를 해결하고 Java 응용 프로그램으로 실행합니다.

저도 그냥 이런 문제가 있었어요.해결책은 eclipse가 프로젝트를 Java 프로젝트로 생성했는지 확인하는 것입니다.새 Java 프로젝트를 만들고 클래스를 src 폴더에 복사(그리고 최종 종속성 가져오기)하기만 하면 됩니다.이것으로 문제가 해결될 것입니다.

정답은 Scala 라이브러리가 빌드 경로의 JRE 라이브러리보다 먼저 필요하다는 것입니다.

Java Buildpath > Order and Export로 이동하여 Scala 라이브러리를 맨 위로 이동합니다.

파일 시스템(Eclipse Helios 아래)에서 가져온 Java 프로젝트에서 이 문제가 발생했습니다.힌트: "bin" 디렉터리가 나타나지 않았기 때문에 src 코드가 전혀 컴파일되지 않은 것 같습니다.

처음부터 (으)로 자바 프로젝트를 ..project비작업 및 작업 프로젝트의 파일.

"Editor is not contain a main type"을 제공하는 프로젝트는 .project 파일의 "buildSpec"을 가지고 있습니다.

<buildSpec>
</buildSpec>

그러나 작업 프로젝트에는 다음이 "buildSpec"으로 포함되어 있었습니다.

<buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

제가 이것을 복사했고, 가져온 프로젝트가 작동했습니다.

제 대답이 자바에 대한 것이라는 것은 알지만, 당신의 스칼라 프로젝트에도 같은 문제가 있을 수 있습니다.

생성한 파일이 src(소스) 폴더 외부에 있을 수 있습니다.소스 폴더 외부의 .java 파일에서 (src 폴더에 있는 파일에서) 클래스 개체를 호출하려고 하면 동일한 오류가 발생합니다..java 파일을 소스 폴더에 복사한 다음 빌드합니다.오류가 사라질 것입니다.

저도 같은 문제가 있었습니다.저는 src 패키지에서 다른 폴더에 메인 클래스를 가지고 있었습니다.나는 그것을 폴더로 옮겨서 수정하고 해결했습니다.

명령줄에서 "command -clean -command"를 실행합니다.이것은 다른 모든 해결책이 실패했을 때의 문제를 해결해 주었습니다.

이 문제는 Java 빌드 경로의 문제일 수 있습니다.다음 단계를 수행합니다.

  1. 프로젝트 속성으로 이동
  2. Java 빌드 경로로 이동
  3. 원본 탭으로 이동하여 프로젝트의 src 폴더 추가

이렇게 하면 문제가 해결됩니다.

maven 프로젝트인 경우 src/main/java 아래에 java 파일이 생성되었는지 확인하십시오.

만약 당신이 얻지 못한다면, JRE 경로를 변경하고 위의 폴더 구조에 java 파일을 만드세요.

Eclipse 3.6에서 이 문제는 주요 방법이 공개되지 않을 때 발생합니다.저는 다음과 같은 주요 방법을 사용하여 문제를 일으켰습니다.

static void main(String[] args) 

더버거는 혼자서 이것을 감지할 수 없었습니다.나는 이클립스가 이것을 간과했다는 것에 꽤 놀랐습니다.

최악의 경우 - 처음부터 모든 가져오기를 사용하여 프로젝트를 다시 만듭니다.제 경우에는 다른 옵션이 작동하지 않았습니다.이 오류 유형은 프로젝트 설정에 오류가 있음을 나타냅니다.한 번은 해결해 보았지만, 일단 추가 개발이 이뤄지면 오류가 다시 발생했습니다.처음부터 모든 것을 다시 만드는 것은 일부 링크를 이해하고 최적화하는 데 도움이 되었으며, 이제는 올바르게 작동한다고 확신합니다.

다음 단계를 수행합니다.

  1. 모든 .java 파일을 다른 위치에 백업합니다.
  2. 전체 Java 프로젝트 삭제
  3. 루트를 마우스 오른쪽 버튼으로 클릭하고 새로 만들기를 클릭하여 새 Java 프로젝트 생성
  4. 모든 파일을 새 위치로 복원합니다!!

File >> Import >> Existing Projects to Workspace >> Archive File 선택 >> 파일 찾아보기 및 찾기 >> Finish이미 가져온 다른 방법이 있으면 삭제하고 해당 방법으로 시도합니다.저는 그것을 시도하기 전까지 같은 문제를 겪고 있었습니다.

한 가지 더 확인해야 할 것은 원본 파일에 있는 하위 디렉터리에 해당하는 올바른 패키지 선언이 포함되어 있는지 확인하는 것입니다.OP가 언급한 오류는 하위 디렉터리의 파일에 선언된 "메인 유형"을 실행하려고 하지만 패키지 문이 누락되었을 때 볼 수 있습니다.

소스 폴더를 변경한 후에도 이 문제가 발생합니다.해결책은 파일을 편집하고 저장하는 것입니다.

'프로젝트 업데이트'를 시도해 보십시오.이 작업을 수행하면 Java 응용프로그램으로 실행 옵션이 나타납니다.

나의 특별한 'Hello World' 사례에서 이 문제의 원인은 나의main()스칼라 내부에 있던 방법class.

제가 넣었습니다.main()스칼라법에 의한 방법.object오류가 사라졌습니다.

왜냐하면 스칼라가라 때문입니다.objectJava 용어로 정적 멤버와 메서드만 내부에 있는 엔티티입니다.

그렇기 때문에 Java의public static void main()스칼라에서 아래에 배치해야 합니다.object.

(스칼라)class정적 내부를 포함할 수 없음)

언급URL : https://stackoverflow.com/questions/1113729/editor-does-not-contain-a-main-type

반응형