단일 Eclipse 프로젝트 내에 여러 DSL을 구성하는 방법이 있는지 알고 싶습니다. 좀 더 구체적으로 말하자면, 최상위 "프로젝트 폴더"에 DSL의 5 개 Xtext 프로젝트를 모두 구성하고 싶습니다.단일 Eclipse 프로젝트에서 여러 Xtext DSL
배경은 우리가 복잡성을 관리하고 재사용을 가능하게하는 작은 재사용 가능한 DSL을 만드는 것입니다. 하나는 표현식 용으로 재사용 가능하고 다른 하나는 도메인 별 또는 응용 프로그램 별 측면을위한 것입니다. 그러나 각 Xtext DSL은 5 개의 프로젝트를 생성하므로 여러 개의 DSL이 관련되어있을 때 Package Explorer에 많은 혼란을 야기합니다. 여러 DSL을가 특정 사용 케이스에 대한 프로젝트 내부에 필요하지 않은 것이있다
Xtext: define 2 DSL's in one project
답 : 전에 강하게 관련 질문은 질문하고있다. 다른 DSL을 쉽게보고 잠재적으로 공동 개발할 수 있기를 원하기 때문에 유스 케이스가 다릅니다.
우리는 Gradle이 관리하는 환경에서 Xtext를 사용하고 있습니다. 우리는 Gradle Eclipse 플러그인을 사용하고 있습니다.이 플러그인은 어디서나 많은 Eclipse 프로젝트 파일을 생성합니다. 따라서 Eclipse에서 "파일 시스템에서 프로젝트 열기"를 선택하면 DSL과 관련된 다섯 가지 프로젝트를 가져올 수있는 옵션뿐만 아니라 상위 폴더를 프로젝트로 여는 옵션도 제공됩니다. 즉, 각 DSL (5 개 프로젝트 모두)을 "프로젝트 폴더"에 깔끔하게 정리할 수 있습니다. 이것은 내가 원하는 것입니다! ...
but ...
실제로 작동하지 않습니다. 아래 그림은 저의 ExperimentDSL 프로젝트 5 개 프로젝트 패키지 탐색기를 보여줍니다. 이 DSL은 작동합니다. 맨 위에는 Gradle에서 생성 한 프로젝트 파일을 포함 할 때 얻을 수있는 폴더 구조가 표시되어 잠재적으로 여러 DSL을 포함 할 수있는 "프로젝트 폴더"가 생성됩니다.
당신이 볼 수 있듯이, GenerateExperimentDSL 빨간색 플래그 및 실행을 거부한다. 이클립스가 어떻게 든 자바 프로젝트로 취급하는 것 같지만,이 문제를 어떻게 수정해야할지 모르며, 이것이 내 문제를 해결하는 데 도움이된다면. 둘째로, 나는이 프로젝트를 손으로 설치하는 방법을 모른다. 왜냐하면이 실패한 경우의 프로젝트 파일은 Gradle에 의해 생성 되었기 때문이다.
간단히 말해서 이런 종류의 폴더 구조를 사용하는 방법을 아는 사람이라면 누구나 혼란없이 작업 영역에 모든 DSL을 보관할 수 있습니까?
부모 프로젝트에서 워크 플로를 실행하려고 시도했지만 dsl 프로젝트에서 실행해야합니다 .i gradle buildship을 설치하는 것이 좋습니다. 이클립스는 gradle 프로젝트에 대한 적절한 지원을 얻으려고합니다 –
저는 Eclipse에 Gradle Buildship이 설치되어 있고 Xtext가 아닌 프로젝트의 일부를 관리하는 작업이 있습니다. 내가 Gradle을 언급 한 이유는 그것이 작동하지 않더라도 원하는 조직을 어떻게 발견했는지에 대한 배경을 제공하는 것입니다. 현재 GenerateExperimentDSL.mwe2를 마우스 오른쪽 단추로 클릭하고 'MWE2 워크 플로로 실행'을 클릭하여 워크 플로를 실행하려고합니다. 이 말은 내가 부모 프로젝트에서 실행하고 있음을 의미합니다. 필자가 수동으로 원하는 구조를 수동으로 설정하고 Eclipse에서 실행하여 작동하도록 만들 수 있습니까? –
이것은 내가 buildship이 해야하는 것을 의미합니다 –