수색…


비고

ANTLR v4는 새로운 프로그래밍 언어를 구축하고 구조화 된 텍스트 또는 이진 파일을 처리 / 변환하는 데 사용되는 강력한 도구입니다. ANTLR은 생성 한 문법을 ​​사용하여 구문 분석 트리 (또는 추상 구문 트리, AST)를 작성하고 트래버스 할 수있는 파서를 생성합니다. 파서는 지정한 대상 언어의 출력 파일로 구성됩니다. ANTLR v4는 Java, C #, JavaScript, Python2 및 Python3과 같은 여러 대상을 지원합니다. C ++에 대한 지원이 진행 중입니다. GUI IDE에서 작업 할 때 Visual Studio, Intellij, NetBeans 및 Eclipse 용 플러그인이 있습니다.

일반적인 정보는 ANTLR 웹 사이트를 방문하십시오. ANTLR에 대해 심각하게 알고 싶다면 Terrence Parr (ANTLR을 만든 사람) 작성한 추천 도서 ANTLR 4 Reference를 확인하십시오 .


중요한 버전 정보

  • 4.5 : 01/22/15 - JavaScript 타겟 및 업그레이드 된 C # 타겟 추가. 4.5 릴리스 정보
  • 4.4 : 07/16/14 - Python2 및 Python3을 대상으로 추가했습니다. 4.4 릴리스 정보
  • 4.3 : 06/18/14 - 주요 버그 수정. 새로운 목표를 추가 할 준비가되었습니다. 4.3 릴리스 정보
  • 4.2 : 02/04/14 - 구문 분석 트리를 선택 / 일치시키는 구문이 개선되었습니다. 4.2 릴리스 정보
  • 4.1 : 06/30/13 - 향상된 구문 분석 성능. AST를 PNG로 내 보냅니다. 4.1 릴리스 정보
  • 4.0 : 01/21/13 - 초기 출시.

명령 줄 사용을위한 설치

ANTLR은 Java Jar 파일로 배포됩니다. 여기에서 다운로드 할 수 있습니다. ANTLR은 jar 파일로 컴파일되므로 필요하지 않으면 Java 런타임 환경이 필요합니다. 여기에서 다운로드 할 수 있습니다.

ANTLR JAR 파일을 다운로드 한 후에는 다른 JAR 파일과 동일한 방법으로 ANTLR을 명령 행에서 실행할 수 있습니다.

Java -jar antlr-4.5.3-complete.jar

antlr-4.5.3-complete.jar 파일과 동일한 디렉토리에서 작업하고 있다고 가정합니다.

이렇게하면 다음과 비슷한 결과가 출력됩니다.

ANTLR Parser Generator  Version 4.5.3
 -o ___              specify output directory where all output is generated
 -lib ___            specify location of grammars, tokens files
 -atn                generate rule augmented transition network diagrams
 -encoding ___       specify grammar file encoding; e.g., euc-jp
 -message-format ___ specify output style for messages in antlr, gnu, vs2005
 -long-messages      show exception details when available for errors and warnings
 -listener           generate parse tree listener (default)
 -no-listener        don't generate parse tree listener
 -visitor            generate parse tree visitor
 -no-visitor         don't generate parse tree visitor (default)
 -package ___        specify a package/namespace for the generated code
 -depend             generate file dependencies
 -D<option>=value    set/override a grammar-level option
 -Werror             treat warnings as errors
 -XdbgST             launch StringTemplate visualizer on generated code
 -XdbgSTWait         wait for STViz to close before continuing
 -Xforce-atn         use the ATN simulator for all predictions
 -Xlog               dump lots of logging info to antlr-timestamp.log

설정을위한 기타 권장 조치는 다음과 같습니다.

     1. Add antlr4-complete.jar to CLASSPATH, either: Permanently: 
Using System Properties dialog > Environment variables > Create or append to CLASSPATH variable Temporarily, at command line: SET CLASSPATH=.;C:\Javalib\antlr4-complete.jar;%CLASSPATH% 
     3.Create batch commands for ANTLR Tool, TestRig in dir in PATH
         antlr4.bat: java org.antlr.v4.Tool %*
         grun.bat:   java org.antlr.v4.gui.TestRig %*

설치 후 .g4 문법 파일을 사용하여 응용 프로그램을 빌드 할 수 있습니다.

Java -jar antlr-4.5.3-complete.jar yourGrammar.g4

-Dlanguage 매개 변수를 사용하여 다른 언어로 응용 프로그램을 빌드 할 수도 있습니다. 예를 들어 C # 파일을 생성하려면 다음과 같이하면됩니다.

java -jar antlr-4.5.3-complete.jar yourGrammar.g4 -Dlanguage=CSharp

일반적인 프로그래밍 언어에 대한 미리 만들어진 문법의 전체 목록을 보려면 여기 를 참조 하십시오 .

빌드 자동화 도구를 사용하여 설치

ANTLR최신 버전을 다운로드하여 폴더에 추출하십시오.

Maven, Gradle 또는 다른 빌드 도구를 사용하여 런타임 (생성 된 문법이 사용하는 클래스) 인 org.antlr:antlr4-runtime 있습니다.

자동으로 - 빌드 프로세스의 일부로서 - 메이븐 프로젝트에서 파서를 생성하기 위해 Maven 플러그인 : org.antlr:antlr4 .

Eclipse에 설치하고 Hello World 빌드하기

(ANTLR 4.5.3, Eclipse Neon, ANTLR 4 IDE 0.3.5 및 Java 1.8로 테스트 됨)

  1. 최신 ANTLR을 다운로드 하십시오 . 완전한 ANTLR Java 바이너리 jar를 가져 오십시오. 적절한 위치 (예 : 다른 Java 라이브러리가 저장된 폴더)에 저장하십시오. 장소를 기억하는 것이 중요하지 않습니다.
  1. Eclipse에 ANTLR IDE를 설치하십시오.

    • Eclipse 메뉴에서 Help를 클릭하고 Eclipse Marketplace를 선택한다.
    • 찾기 : 상자에 antlr을 입력하고 이동을 클릭하십시오.
    • ANTLR 4 IDE 용 설치를 클릭하십시오.
    • 선택한 기능 확인 창에서 마침을 클릭하십시오.
    • 보안 경고 창이 나타나면 확인을 클릭하십시오.
    • Eclipse를 다시 시작하십시오.
  2. "인젝터를 만들지 못했습니다 ..."오류로 해결하십시오.

    • Eclipse에서 ANTLR 4 환경 설정에 액세스 할 때 또는 환경 변수 HOME이 설정되지 않은 경우 다음 오류가 발생합니다. com.github.jknack.antlr-4ide.Antlr4 for com.github.jknack.antlr-4ide.Antlr4의 인젝터를 작성하는 데 실패했습니다. .
    • 환경 변수 HOME이 설정되어 있는지 확인하십시오. 그렇지 않은 경우 시스템에 맞게 설정하십시오.
    • Xtext 2.7.3 을 antlr-nnn-complete.jar과 같은 위치에 다운로드하십시오.
    • Eclipse에서 Help를 클릭하고 Install New Software를 선택한다.
    • 추가 ...를 눌러 저장소 추가 창으로 이동하십시오.
    • 예를 들어, xtext 2.7.3이라는 이름을 입력 한 다음 Archive ...를 클릭하고 Xtext 2.7.3 파일을 탐색하여 선택한 다음 OK를 클릭하십시오.
    • 설치 창에서 모두 선택 버튼을 클릭 한 후 다음>을 두 번 클릭하고 사용권 계약에 동의하십시오. 마침을 클릭하십시오.
    • Eclipse를 다시 시작하십시오.
  3. ANTLR이있는 Eclipse / Java에게 알리십시오.

    • Eclipse에서 Window를 클릭하고 Preferences를 선택한다.
    • 왼쪽 창에서 Java 및 경로 빌드를 확장 한 다음 클래스 경로 변수를 선택하십시오.
    • 오른쪽 창에서 새로 만들기 ...를 클릭하고 이름을 입력 한 다음 파일 ...을 클릭하고 antlr-nnn-complete.jar의 위치로 이동합니다. Classpath Variables 창으로 돌아가려면 OK를 클릭하십시오.
    • 확인을 클릭하여 환경 설정을 종료하십시오.
  4. (선택 사항) ANTLR IDE 생성 소스 디렉토리를 구성하십시오.

    • Eclipse 기본 창에서 창을 클릭 한 다음 환경 설정을 클릭하십시오.
    • 왼쪽 분할 창에서 ANTLR 4를 펼치고 5 구를 선택하십시오.
    • 원하는 경우 옵션에서 디렉터리를 변경합니다. 예를 들어, java는 나의 타겟 언어이므로 ./antlr-java를 사용합니다.
    • 확인을 클릭하여 환경 설정 창을 닫으십시오.
  5. ANTLR 4 프로젝트를 작성하십시오.

    • Eclipse 기본 창에서 File, New, Project로 이동하십시오.
    • 새 프로젝트 창에서 일반을 ​​펼치고 ANTLR 4 프로젝트를 선택하십시오.
    • 다음을 클릭하고 프로젝트 이름을 입력 한 다음 마침을 클릭하십시오.
    • 기본 새 프로젝트에는 Hello.g4 파일이 들어 있으며 표준 "Hello World"프로그램을 자동으로 빌드합니다.
    • 패키지 탐색기에서 새 프로젝트 폴더를 확장하여 대상 소스 파일이 들어있는 g4 파일과 target 폴더 (또는 5 단계에서 지정한 이름) 폴더를 확인합니다.

Visual Studio 2015에 ANTLR 설치 (Nuget 사용)

  1. Visual Studio 2015를 열고 도구 → 확장 프로그램 → 온라인으로 이동하여 Antlr을 검색하십시오. 확장 ANTLR 언어 지원 (Sam Harwell 작성)을 다운로드하고 Visual Studio를 다시 시작하십시오.
  2. 새 콘솔 응용 프로그램 프로젝트를 만듭니다. 솔루션 → Nuget Packages for Solution → Browse (Tab)를 마우스 오른쪽 단추로 클릭하고 Antlr4를 검색하여 설치하십시오. Antlr4 너겟
  3. 마우스 오른쪽 버튼으로 프로젝트에 새 항목을 추가하십시오. 그리고 ANTLR4 템플리트를 찾으십시오. Antlr4 템플릿
  4. ANTLR 파일 (.g4 끝)에서 파일 → 고급 저장 옵션으로 이동하여 유니 코드 ( 서명없는 UTF-8) - 코드 페이지 65001을 검색하고 확인을 클릭하십시오. 그게 전부 야. Antlr 고급 저장 옵션

모든 것이 작동하는지 테스트

  • ANTLR 4 결합 문법 항목을 만들고 이름을 Calculator.g4로 지정하십시오.
  • 이 Github 프로젝트의 계산기 소스 코드를 복사하여 붙여 넣기 : Tom Everett 저의 계산기
  • 문법 계산기를 문법 계산기로 변경하십시오.
  • 솔루션 탐색기에서 → 모든 파일 표시를 클릭하십시오.
    솔루션 탐색기 모든 파일 표시
  • 프로젝트 저장 및 실행 (시작)
  • 솔루션 탐색기에서 obj 폴더 아래에 방문자 및 수신기처럼 생성 된 CS 클래스가 표시되어야합니다. 이 경우 성공했습니다. 이제 Visual Studio 2015에서 ANTLR로 작업을 시작할 수 있습니다. ANTLR 생성 클래스


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow