묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! Querydsl
안녕하세요. noClassDefFoundError Q 파일을 찾지 못하는 문제 문의 드립니다.
안녕하세요. 주말 잘 쉬고 계신지요. 다름이 아니라 갑자기 문제가 발생되어 문의드립니다. queryDsl을 통해 generated 된 java 파일 생성하고 정상빌드가 되었지만 Runtime시 Q파일을 찾지못하여, noClassDefFoundError가 발생됩니다. 증상 - complie시 문제 없음, Runtime시 문제발생 - jar/war 생성후 실행시 문제 없음 - IDE(visual studio code) Debug에서 발생 - 1일주일 전에는 발생되지 않았음 (업데이트와 관련있어 보입니다.) - 일주일 사이에는 배포( docker ) 작업만 진행 시도방법 ( 해결되지 않음 ) - build.gradle 내 querydslDir 위치 변경 - classpath 에 querydslDir 추가 - modulepath 에 querydslDir 추가 - sourcepath 에 에 querydslDir 추가 build.gradle plugins { id 'org.springframework.boot' version '2.2.4.RELEASE' id 'io.spring.dependency-management' version '1.0.9.RELEASE' // querydsl 추가 id "com.ewerk.gradle.plugins.querydsl" version "1.0.10" id 'java' } group = 'dev.moonho' version = '0.0.2' sourceCompatibility = '1.8' configurations { developmentOnly runtimeClasspath { extendsFrom developmentOnly } compileOnly { extendsFrom annotationProcessor } // querydsl 추가 querydsl.extendsFrom compileClasspath } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.6.1' compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' compile group: 'org.hibernate', name: 'hibernate-core', version: '5.4.14.Final' runtimeOnly 'com.h2database:h2' compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.6.0' annotationProcessor 'org.projectlombok:lombok' testImplementation('org.springframework.boot:spring-boot-starter-test') { exclude group: 'org.junit.vintage', module: 'junit-vintage-engine' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } compile group: 'org.springframework.boot', name: 'spring-boot-starter-cache', version: '2.2.6.RELEASE' // querydsl 추가 implementation 'com.querydsl:querydsl-jpa' } test { useJUnitPlatform() } //querydsl 추가 시작 def querydslDir = "$buildDir/generated/querydsl" querydsl { jpa = true querydslSourcesDir = querydslDir } sourceSets { main.java.srcDir querydslDir } compileQuerydsl { options.annotationProcessorPath = configurations.querydsl } //querydsl 추가 끝 Querydsl을 사용하시면서 그간 경험상 해당 문제를 접해보신 적이 있거나, 의심되는 부분이 있으신지요? 감사합니다.
-
해결됨해커를 위한 iOS 앱 모의 해킹 전문 과정
ipainstalle가 의존관계로 설치가 되지 않습니다.
탈옥폰이 se / ios11 버전입니다. (기존에 가지고 있던 폰) 탈옥툴은 Electra를 사용하였습니다. ipainstaller가 cydia에서 검색은되나 설치시 의존관계때문에 설치가 안되어서 (apt lib등 기존 낮은버전 사용) ssh 터미널 모드에서 apt update apt upgrade apt --fix-broken install 를 강제로 실행하였습니다. 그후 cydia에 아무것도 표시되지 않고 있는데요 복구 방법은 없을까요? 공장초기화로 돌려 재탈옥을 시켜야 하나요?
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
EntityGraphType설정에 관해
안녕하세요. 언제나 좋은 강의 너무 감사드립니다. 다름이 아니라 본영상에 8:43초 쯤에 나오는 EntityGraphType이 FETCH 타입과 LOAD타입이 있는데요. @EntityGraph(value ="Study.withTagsAndManagers", type = EntityGraph.EntityGraphType.FETCH)Study findStudyWithTagsByPath(String path); 이것의 타입을 FETCH로 해서 태그를 더하는 액션을 취할경우, 다음과 같은 SQL이 발생합니다. 2020-05-17 09:34:12.745 DEBUG 8292 --- [io-8080-exec-10] org.hibernate.SQL : select study0_.id as id1_4_0_, tag2_.id as id1_9_1_, account4_.id as id1_0_2_, study0_.closed as closed2_4_0_, study0_.closed_date_time as closed_d3_4_0_, study0_.full_description as full_des4_4_0_, study0_.image as image5_4_0_, study0_.path as path6_4_0_, study0_.publish_date_time as publish_7_4_0_, study0_.published as publishe8_4_0_, study0_.recruit_update_date_time as recruit_9_4_0_, study0_.recruiting as recruit10_4_0_, study0_.short_description as short_d11_4_0_, study0_.title as title12_4_0_, study0_.use_banner as use_ban13_4_0_, tag2_.title as title2_9_1_, tags1_.study_id as study_id1_7_0__, tags1_.tags_id as tags_id2_7_0__, account4_.bio as bio2_0_2_, account4_.email as email3_0_2_, account4_.email_check_token as email_ch4_0_2_, account4_.email_check_token_generated_at as email_ch5_0_2_, account4_.email_verified as email_ve6_0_2_, account4_.joined_at as joined_a7_0_2_, account4_.location as location8_0_2_, account4_.nickname as nickname9_0_2_, account4_.occupation as occupat10_0_2_, account4_.password as passwor11_0_2_, account4_.profile_image as profile12_0_2_, account4_.study_created_by_email as study_c13_0_2_, account4_.study_created_by_web as study_c14_0_2_, account4_.study_enrollment_result_by_email as study_e15_0_2_, account4_.study_enrollment_result_by_web as study_e16_0_2_, account4_.study_updated_by_email as study_u17_0_2_, account4_.study_updated_by_web as study_u18_0_2_, account4_.url as url19_0_2_, managers3_.study_id as study_id1_5_1__, managers3_.managers_id as managers2_5_1__ from study study0_ left outer join study_tags tags1_ on study0_.id=tags1_.study_id left outer join tag tag2_ on tags1_.tags_id=tag2_.id left outer join study_managers managers3_ on study0_.id=managers3_.study_id left outer join account account4_ on managers3_.managers_id=account4_.id where study0_.path=? 2020-05-17 09:34:12.745 TRACE 8292 --- [io-8080-exec-10] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [VARCHAR] - [aaaa] 2020-05-17 09:34:12.748 DEBUG 8292 --- [io-8080-exec-10] org.hibernate.SQL : select tags0_.account_id as account_1_1_0_, tags0_.tags_id as tags_id2_1_0_, tag1_.id as id1_9_1_, tag1_.title as title2_9_1_ from account_tags tags0_ inner join tag tag1_ on tags0_.tags_id=tag1_.id where tags0_.account_id=? 2020-05-17 09:34:12.748 TRACE 8292 --- [io-8080-exec-10] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [86] 2020-05-17 09:34:12.749 DEBUG 8292 --- [io-8080-exec-10] org.hibernate.SQL : select tag0_.id as id1_9_, tag0_.title as title2_9_ from tag tag0_ where tag0_.title=? 2020-05-17 09:34:12.749 TRACE 8292 --- [io-8080-exec-10] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [VARCHAR] - [aaaa] 2020-05-17 09:34:12.750 DEBUG 8292 --- [io-8080-exec-10] org.hibernate.SQL : delete from study_tags where study_id=? 2020-05-17 09:34:12.751 TRACE 8292 --- [io-8080-exec-10] o.h.type.descriptor.sql.BasicBinder : binding parameter [1] as [BIGINT] - [87] 문제는 2번째 발생하는 SQL입니다. 제가 생각했을때는 tags와 managers에 관련된 SQL만 발생해야 하는데, 왜 중간에 account_tags 테이블로부터 태그 정보를 얻으려 하는지 모르겠습니다.이 테이블은 settingsController에서 태그 관련 액션시 이용되는 테이블이라고 생각하고 있습니다. 디버그해보니, @CurrentUser시점에서 불러들이는 account의 tags와 zones는 size=0임을 알수 있습니다. ...그렇다고 해도, getStudyToUPdateTag가 불러졌을때 account_tags가 불려지는 이유를 도무지 알수가 없습니다.EntityGraphType을 FETCH가 아닌 LOAD타입으로 바꾸면 account_tags관련 SQL이 나오지 않습니다. 제가 코딩을 잘못한 것일까요? 아니면 이 단계에서는 이렇게 나오는게 정상인가요? PS:백기선님의 github에서 master브랜치를 디버깅 -> account_tags관련 SQL 안나옴. -> 원인분석 실패...만일을 대비해, 제 깃헙 링크도 첨부합니다.https://github.com/yongsoo-kim/studyolle/tree/feature/ph4_study_feature/src/main/java/com/studyolle/studyolle/study
-
미해결스프링 기반 REST API 개발
RestApi에 thymeleaf 관련 질문드립니다.
안녕하세요, 최근 사이드 프로젝트에서 spring boot rest api 담당을 하게 되어 개발 중에 있습니다. 다름이 아니라, 관리자 페이지가 필요할 것같아 개발하려고 하는데요. 현재 서버는 Oauth2를 이용하여 인증 방식을 사용합니다. thymeleaf 템플릿에서 formlogin을 통하여 인증 과정을 거치는데까지는 성공했지만, 그 다음 리소스들에 대해서는 oauth error, full auth request가 발생합니다. 해당 계정으로 oauth2 토큰을 만들어도 뷰페이지에 어떻게 접근을 해야할지 모르겠습니다. 현재 ResourceServerConfigureAdapter 를 상속받아 configure http 부분에서 인증을 하게되어있고 formlogin 도 열어둔 상태입니다. 결론 적으로 oauth2 를 이용한 서버에서 thymeleaf 을 이용한 폼로그인으로 자원에 대한 인증이 가능한가요? login -> 폼인증통과-> 다음 html에서 인증에러 아니면 React.js 를 이용하여 관리자플젝을 따로 구현해야할까요?ㅠㅠ 감사합니다!
-
해결됨[모바일] 딥러닝 Computer Vision 실전 프로젝트
tensorflow 에러 질문이요
삭제된 글입니다
-
해결됨윤재성의 만들면서 배우는 Spring MVC 5
삭제 처리 시 서버에서 파일은 왜 안지우나요?
안녕하세요 삭제 처리 시 서버에서 파일은 왜 안지우나요? 혹시 뒤에서 다루나요
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
학습 순서에 대해 조언을 구합니다.
안녕하세요 선생님 좋은 강의 잘 수강하고 있습니다. 다름이 아니라, 종속변수(y)값이 여러개인 모델(작물속 성분의 화학물질의 비율 1,2,3...) 을 만드려면 선생님의 머신러닝/딥러닝강좌의 어느 파트를 수강해야 하는지 여쭤보고 싶습니다.
-
미해결바닥부터 시작하는 STM32 드론 개발의 모든 것
HAL할 드라이버와 LL드라이버 뜻은 뭔가요?
HAL할 드라이버와 LL드라이버 뜻은 뭔가요? 이 부분에 대해 설명이 없습니다
-
미해결페이스북 클론 - full stack 웹 개발
insertAdjacentHTML을 하는 이유가 궁금합니다
comment를 추가하는 ajax 통신 success 마지막에 location.reload()를 해주는데, 이게 새로고침 하는것과 같다고 알고있습니다. 그렇게 되면 ajax 통신에서 html을 주고 받으며 insertAdjacentHTML로 post_list.html을 수정할 필요가 있나요? 그냥 json을 보내 comment를 생성하고 reload해주면 더 간단할거 같습니다.
-
미해결스프링 데이터 JPA
@Transaction 처리 질문입니다.
@Transaction 을 붙여서, 트랜잭션 처리를 언제 해야하는지 알 수 있을까요? 검색해보니, 여러 쿼리를 하나의 단위로 실행해야할 때만 붙여서 처리하면 되는 것 같으나 일부 블로그에서는 모든 service의 메소드에 붙이라는 곳도 있는 거 같아서 헷갈립니다ㅠㅠ 따라서 read를 제외한 create, update, delete가 하나라도 있는 service layer의 메소드에 전부 붙여야하는지 궁금합니다. 다음은 update, delete 각자 하나의 쿼리만 수행하는 코드 예시입니다. public boolean updateBoard(Board board, Long id) { Optional<Board> optionalBoard = boardRepository.findById(id); if (optionalBoard.isEmpty()) { return false; } Board existingBoard = optionalBoard.get(); existingBoard.setTitle(board.getTitle()); existingBoard.setContent(board.getContent()); boardRepository.save(existingBoard); return true; } public boolean deleteBoard(Long id) { Optional<Board> optionalBoard = boardRepository.findById(id); if (optionalBoard.isEmpty()) { return false; } boardRepository.deleteById(id); return true; }
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
Jobs에 대한 API호출 실패
Jobs에 대한 API호출 시 아래와 같은 응답이 옵니다. https://api.hnpwa.com/v0/jobs/1.jsonError: could not handle the request
-
미해결찾아가는 사이버 독도교실
다운로드와 인쇄하기는 어떻게 하나요?
정리하기/핵심정리 화면의 하단에 보면 다운로드와 인쇄하기 박스가 보이는데 실행이 되지 않네요.
-
미해결그림으로 배우는 자바, 파트2: 객체지향!
모든 강의 수강 후
강좌 잘 들었습니다! 그림으로 이해하니 빠른 습득이 가능한 것 같습니다 ㅎㅎ 인터페이스까지 마치고 학습을 종료했는데 이후에는 어떤 것을 공부해야하나요? 추가로 연습문제들을 풀어보고 싶은데 혹시 추천해줄만한 문제 있을까요? 저의 목표는 대학교 JAVA 수업 A+ 받기 입니다.. 학교 수업에서는 기본개념보다 훨씬 자세하고 구체적으로 나가기 때문에 조금 어렵게 공부해보고 싶습니다ㅜㅜ 추천해주실만한 커리나 문제가 있으면 부탁드립니다!
-
미해결웹 게임을 만들며 배우는 React
틱택토 memo 적용 시 문제 발생
위의 Td.jsx 에 memo를 적용하면 렌더링이 줄어들고 O, X가 잘찍힙니다. 하지만 Tr.jsx에 memo를 적용하면 렌더링은 줄어들지만 O와 X가 찍히지가 않습니다.. 왜그런지 모르겠습니다 ㅠㅠ..
-
미해결생활코딩 - Linux
안녕하세요 리눅스의 질문입니다.
제가 맥북을 쓰고 있는데 리눅스따로 다운을 하지 않고 해도 될까요? 아니면 맥북에 리눅스 다운을 해야하나요..? 제가 다운을 하려고 했는데 잘 안되서 인터넷에 찾아보니까 맥이 리눅스랑 비슷하다고 무방하다고 해서 이렇게 질문 드립니다!
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
안녕하세요.퀴즈#7에 관한 질문입니다.
저는 나도코딩님과 다르게 아래처럼 코딩을 했습니다. for week in range(1, 51): with open("{0}주차.txt", "w", encoding="utf8".format(week)) as report: report.write("- {0}주차 주간보고 -".format(week)) report.write("\n부서 : ") report.write("\n이름 : ") report.write("\n업무요약 : ") 그런데 with코드에서는 내용작성을 할 때는 .format코드가 실행이 되지만 open코드에서는 .format코드가 실행이 되지않아 파일 이름은 {0}주차.txt로 저장되고 내용은 - 50주차 주간보고 - 부서 : 이름: 업무 요약: 이렇게 저장이 되는데 .format코드는 with코드에서 실행이 불가능한가요? str로 감싸봤는데도 안되네요...
-
미해결C 프로그래밍 - 입문부터 게임 개발까지
파이썬은 강의 안하세요?
제가 엄청 어려워하는 c강의를 이해하기 쉽게 강의해주셔서 포기안하고 열심히 강의 듣고 있는데요. 파이썬은 강의 안하시나요? 파이썬도 선생님이 하는 강의 듣고 싶네요.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
GetComponent에 대해서
이 함수가 해당 게임 오브젝트의 컴포넌트를 불러오는 함수인 거죠? Instance = go.GetComponent<Managers>();의 경우에는 게임 오브젝트 go에 넣어진 @Managers의 Managers란 컴포넌트를 불러와서 Instanc에 넣는 거고요. 그런데 비주얼 스튜디오에서 GetComponent의 설명을 읽어보니 Component GameObject.GetComponent(systerm type type) 라고 되어 있던데 맨 앞의 Component는 왜 붙어있는 건가요? 유니티의 도큐멘테이션에서는 Component.GetComponet라고 되어 있던데 이렇게 쓰면 컴포넌트의 컴포넌트를 불러온다는 건가요???? 마치 인셉션처럼?? 헷갈리네요 ㅜㅜ
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
draw.io
draw.io 자료가 한장인가요?
-
해결됨우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
제 42강 챕터06-04 Futures 강의 중 worker 변수 관련 질문
좀 이해가 가지 않는 부분이 있어서 질문을 드립니다 이 강의에서 worker 변수를 선언하고 min(10, len(work_list)) 의 값을 지정하여 work_list 의 항목 갯수에 따라 가변적으로 지정하며, 최대 10을 넘지 않게 한 것까지는 알겠습니다 work_list 에서 선언된 항목들을 sum_generator 함수에 멀티쓰레드로 넣기 위해 이런 작업들을 한다고 이해하고 있는데요 그런데 정작 이 전체 함수 내에서 worker 변수가 전혀 쓰이지 않고, worker 변수 선언된 부분을 지워도 문제없이 프로그램이 실행되는데 과연 이 worker 변수가 겉으론 표현되지 않지만 무슨 내부적 프로세스에 필수적으로 필요한 약속된 변수인 것인지, 질문을 쭉 찾아봐도 정확하게 이런 부분에 대해 의문을 해소할 수가 없어서 문의를 드리게 되었습니다