티스토리 뷰
지난번 삽질기록을 올린 이후로 더더더욱 많은 삽질을 했다.
13일에도 한 3시간을 내다버렸고, 오늘은.. 6시간?을 오류 찾는다고 해멨었다.
검색한 오류도 많았는데 너무 많이 검색하다보니 뭘 검색했는지도 모르겠다...
어쨌든 오늘 Springboot+gradle+javafx로 띄우는걸 성공은 했다!
구성 환경
(SpringBoot 2.7.7 | Gradle 6.9.3 | JavaFx 11)
- Spring: https://start.spring.io/ SpringBoot initializr에서 생성된걸 활용, 디펜던시는 입맛대로 추가.
- Gradle: 역시 기본세팅 그대로만 사용.
- JavaFx: Gradle 설정에 의존성만 추가함.
- IDE : Intellij 2022.3.1 로 했고...이클립스랑 별 다를거 없이, Gradle 빌드파일 수정후 새로고침만 잘 해주면 된다.
실행안됐던 문제를 파악해보면
- build.gradle 설정이 잘못됨.
- SpringApplication 실행 설정이 잘못됨.
- module-info.java 파일을 괜히 추가해서 더 꼬였음.
- JavaFx, Spring 프로젝트를 각각 따로만들고 > 두 프로젝트를 합쳐보겠다고 잘못된 설정을 계속 복붙한것
결정적으로 내가 Spring을 너무 모름
1 - Gradle 7.6 > 6.9.3으로 변경 및 아래의 해결가이드 링크를 따라 알맞은 설정을 추가함.
주석이 새로 맞춘 부분이다.
plugins {
id 'java'
id 'org.springframework.boot' version '2.7.7'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
// add JavaFx plugins (start)
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.13'
}
javafx {
version = "11.0.2"
modules = [ 'javafx.controls' ]
}
mainClassName = 'ToStringParserApplication'
// add JavaFx plugins (end)
이렇게 맞추고 Gradle 업데이트를 진행했다. 프로젝트 세팅이다보니 버전에 매우 민감했던거 같기도 하다.
2. 기존엔 MainApplication 파일을 하나로 쓰고, 거기에 소스를 다 넣어뒀었는데
MainAppication, ParserApplication 클래스 이렇게 두개로 분리하고 start method를 추가했다. (Start 메소드는 JAVA FX 실행시 필수인것 같다)
+) JavaFX 사용시 Application 클래스 상속은 필수
+) Start 메서드를 재정의해야 본인이 원하는 내용을 띄울 수 있는듯. XML로 화면 구성하는건 추후에 추가...
+) 현재는 MainAppication에서 ParserApplication 을 Launch하는 구조임.
MainApp![]() |
SecondApp![]() |
3. module-info.java > 잘 모르면 굳이 더 안건드려도 되더라. 이거 추가했다가 온갖 오류를 맛봤는데
결국엔 필요없었다. (모듈이 많을때 연결하는 용도인것 같았음)
4. 제대로 된 가이드를 찾아서 했으면 이 합치는 과정이 어렵지는 않았을것 같다. 혼자서 무작정 합쳐보겠다고 덤벼서 삽질을 더 많이 했었다.
5. 음..토비의 스프링을 4년전에 샀는데 아직도 책이 깨끗한게 문제....
참고한 해결가이드
- https://blog.jetbrains.com/idea/2019/11/tutorial-reactive-spring-boot-a-javafx-spring-boot-application/
- https://openjfx.io/openjfx-docs/#gradle
첫 가이드는 JetBrains에서 제공하는 javaFX + SpringBoot 어플리케이션 만들기다.
> Application 소스를 그대로 따라서 작성했다. 너무 잘됨. 싸랑해요 JetBrains
> 영상도 제공되니 maven 기반이면 그대로 따라하기 더 좋을것 같다.
두번째 가이드는 Gradle에서 JavaFx 설정하기
> Gradle 설정을 잘못해서 다음 오류가 계속 났다.
Could not find method compile~
> 위 이미지중 1번 내용처럼 추가해주니 잘 됐었다.
> Gradle을 처음써보니 오류원인을 더 못찾았다. 결국엔 gradle에 내가 추가한 내용이 틀렸다는 것이니, 마지막에 추가한 내용을 지워가면서 실행을 해보는게 좋겠다.
이제 버튼 액션이랑, 화면구성을 내 맘대로 꾸미는 방법을 찾고
데스크탑에서 실행시키는 프로그램으로 뽑는법을 알아봐야겠다.
'개발 > 뻘짓 기록물' 카테고리의 다른 글
IntelliJ "Java 분석중.." 에서 더 안넘어갈때 시도할 수 있는 방법 (1) | 2023.03.09 |
---|---|
JavaFX 삽질기록(4) (10) | 2023.01.19 |
JavaFX 삽질기록(3) (0) | 2023.01.16 |
JavaFX 삽질기록 (0) | 2023.01.12 |
- Total
- Today
- Yesterday
- 프로젝트 환경 구축
- 기계식키보드 윤활
- 복붙 쉽게
- 인텔리제이 멀티커서
- 복붙 이력
- 기계식키보드 스위치
- JavaFX
- 커스텀키보드
- hmx 랩터
- 믹틀란
- 키보드 윤활
- IntelliJ
- 지온웍스
- 기계식키보드
- 복붙 히스토리
- 인텔리제이 메이븐
- 인텔리제이 커서 여러개
- 단축키
- gradle
- Ditto프로그램
- geonworks
- 기계식 윤활
- maven
- 클립보드 대체
- java
- 스위치 윤활
- 탭 전환 단축키
- 윈도우 단축키
- 윈도우 클립보드
- intellij 같은 단어 선택
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |