80.2. 컴파일


csimple 언어는 일반 Java 소스 코드로 구문 분석되어 다른 모든 소스 코드와 함께 컴파일되거나 camel-csimple-joor 모듈을 통해 부트스트랩 중에 한 번 컴파일할 수 있습니다.

csimple을 컴파일하는 방법은 두 가지가 있습니다.

  • 빌드 시 camel-csimple-maven-plugin 을 사용하여 소스 코드를 생성합니다.
  • Camel 부트 스트랩 중에 런타임 in-memory 컴파일을 수행하는 camel-csimple-joor 사용

80.2.1. camel-csimple-maven-plugin 사용

camel-csimple-maven-plugin Maven 플러그인은 소스 코드에서 모든 csimple 스크립트를 검색하는 데 사용되며, 그러면 다른 모든 소스와 함께 컴파일됩니다.

maven 플러그인은 .java.xml 파일(Java 및 XML DSL)의 소스 코드 스캔을 수행합니다. 스캐너는 특정 코드 패턴을 감지하기 위해 제한되며 비정상/레이어 방식으로 사용되는 경우 일부 csimple 스크립트를 검색하지 못할 수 있습니다.

camel-csimple-joor 를 사용한 런타임 컴파일에는 이러한 제한 사항이 없습니다.

이점은 모든 csimple 스크립트가 일반 Java 컴파일러를 사용하여 컴파일되므로 모든 항목이 애플리케이션 JAR 파일의 .class 파일로 포함되어 있으며 런타임에 추가 종속성이 필요하지 않습니다.

camel-csimple-maven-plugin 을 사용하려면 다음과 같이 pom.xml 파일에 추가해야 합니다.

<plugins>
    <!-- generate source code for csimple languages -->
    <plugin>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-csimple-maven-plugin</artifactId>
        <version>${camel.version}</version>
        <executions>
            <execution>
                <id>generate</id>
                <goals>
                    <goal>generate</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
    <!-- include source code generated to maven sources paths -->
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>3.1.0</version>
        <executions>
            <execution>
                <phase>generate-sources</phase>
                <goals>
                    <goal>add-source</goal>
                    <goal>add-resource</goal>
                </goals>
                <configuration>
                    <sources>
                        <source>src/generated/java</source>
                    </sources>
                    <resources>
                        <resource>
                            <directory>src/generated/resources</directory>
                        </resource>
                    </resources>
                </configuration>
            </execution>
        </executions>
    </plugin>
</plugins>
Copy to Clipboard Toggle word wrap

또한 생성된 소스 코드가 컴파일되고 애플리케이션 JAR 파일에 포함되도록 build-helper-maven-plugin Maven 플러그인을 추가하여 Java 컴파일러의 소스 폴더 목록에 created /generated 를 포함해야 합니다.

maven 플러그인을 사용하는 Camel 예제의 camel-example-csimple 예제 를 참조하십시오.

80.2.2. camel-csimple-joor 사용

jOOR 라이브러리는 Java 컴파일러와 통합되며 Java 코드의 런타임 컴파일을 수행합니다.

camel-simple-joor 를 사용할 때 지원되는 런타임은 Java 독립 실행형, Spring Boot, Camel Quarkus 및 기타 마이크로 서비스 런타임을 대상으로 합니다. OSGi, Camel Karaf 또는 Java Application Server 런타임에서는 지원되지 않습니다.

jOOR은 fat exhaust packaging (https://github.com/jOOQ/jOOR/issues/69)을 사용하는 Spring Boot와의 런타임 컴파일을 지원하지 않으며, 기존 클래스 경로와 함께 작동합니다.

camel-simple-joor 를 사용하려면 classpath에 종속성으로 추가하기만 하면 됩니다.

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-csimple-joor</artifactId>
  <version>{CamelSBProjectVersion}</version>
</dependency>
Copy to Clipboard Toggle word wrap

pom.xml 파일에 Maven 플러그인을 추가할 필요가 없습니다.

jOOR 컴파일러를 사용하는 Camel 예제camel-example-csimple-joor 예제를 참조하십시오.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat