묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
WebView 4.x 버전 대응하기! 오류 질문입니다.
아래와 같은 오류가 뜨고 실행이 되지 않습니다.어떻게 해야할까요? 참고로 ^4.0.6 버전으로 따라해봤습니다. Launching lib\main.dart on sdk gphone64 x86 64 in debug mode...Running Gradle task 'assembleDebug'...Warning: The plugin webview_flutter_android requires Android SDK version 33.For more information about build configuration, see https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.One or more plugins require a higher Android SDK version.Fix this issue by adding the following to C:\Users\haK\StudioProjects\Netflix_flutter\android\app\build.gradle:android {compileSdkVersion 33...}FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:checkDebugAarMetadata'.> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction> One or more issues found when checking AAR metadata values:Dependency 'androidx.webkit:webkit:1.6.0' requires 'compileSdkVersion' to be set to 33 or higher.Compilation target for module ':app' is 'android-32'* Try:> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to get full insights.* Get more help at https://help.gradle.orgBUILD FAILED in 15sException: Gradle task assembleDebug failed with exit code 1
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
object detection 거리 감지를 위한 질문 (YOLO V5)
안녕하세요. 철민 강사님께 늘 좋은 강의 내용에 감사하면서 오늘도 질문을 드립니다. object detection 에서 물체 간의 거리 감지를 위한 질문 (YOLO V5)을 드리려고 합니다. 강의에서 배운 내용을 바탕으로 입력 영상으로 실시간 객체간의 거리를 측정하는 기능을 개발하고 있는데 아래와 같이 중장비와 사람간의 바운딩 박스의 가운데 좌표를 읽어 거리를 측정하고 있는데 근본적이 오류가 있었습니다. 오류사람의 위치가 이동하여 중장비 옆에서 잡은 거리가 2m라고 했을 때 뒤에서 잡은 거리는 2.7m가 되고 위에 지점에서 잡은 거리는 3.8미터가 되는 오류가 있습니다. 이 문제를 해결하기 위해 바운딩 박스의 가장 중심점 에서 거리를 측정 오류를 벗을 수는 없는 것인가요? semantic segmentation 픽셀 단위 이미지를 이용하면 되지만 이 경우에는 사람이 너무 가까이 가면 하나로 클래스로 인식하고 이것을 Instance Segmentation 으로 해결하려고 하는데 GPU 연산의 하드웨어적인 한계가 있었습니다. object detection 알고리즘으로 객체 간 위치별 거리측정의 오차를 없앨 수 있는 방법에 대해서 조언을 부탁드립니다.
-
미해결실전! Querydsl
querydsl에서 oneToMany 관계인데 Many쪽 검색이 필요할 때 어떻게 해야하나요?
예를 들어 Order와 OrderItem이 있는데 Order의 검색을 동적쿼리로 검색해야해서 querydsl을 사용하고 있는 상황입니다. 그 중 검색조건이 OrderItem의 이름으로 검색해서 Order의 목록을 가져와야하는데 Order와 OrderItem을 조인하고 where절에 OrderItem의 이름으로 조회하는 방법 말고는 없을까요? 그럴 경우 distinct를 쓰거나 따로 중복 제거 로직을 넣어야해서ㅜ 혹시 다른 방법이 있나 문의드립니다.이런 경우에는 양방향 연관관계를 맺어주고 해결해도 될까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
GraphQL $boardId: ID! 오류
안녕하세요! 강의듣는데 혼자서는 오류를 해결하지 못 할것 같아서 질문드립니다!오류뜨는 부분은 freeboard_frontend > boards > [_id] > index.js (상세페이지) 입니다. 글 작성 -> 상세페이지로 이동 -> 상세페이지에서 수정 버튼 누르면 수정페이지로 이동 -> 수정페이지에서 수정하고 수정버튼 누르면 다시 상세페이지로 이동 > 상세페이지에서 삭제버튼 클릭하면 삭제후 리스트로 이동제가 의도한 기능들은 모두 정상작동은 하는데 상세페이지에만 접속하면 해당 오류가 발생합니다..! (상세페이지 query 코드입니다) -> $boardID: ID! 이부분에서 오류가 나는것 같은데 강의 자료실에 올라온 코드와 비교해봤지만 같게 작성된걸 확인했습니다! (상세페이지 접속했을때만 NetWork에 이렇게 뜹니다ㅠㅠ) 한가지 더 궁금한 점이 있습니다!타입 지정해줄때 Docs 보고 그대로 적으면 된다고 하셨는데 ($boardId: [ID!]!) 이렇게 적으니까 오류가 나서 ($boardId: ID!) 이렇게 적으니까 작동이되더라구요.. 제가 강의 들으면서 빼먹은 부분이 있는걸까요ㅠㅠ?이럴땐 어떻게 적어야 할까요ㅠ??export const DELETE_BOARD = gql` mutation deleteBoard($boardId: ID!){ deleteBoard (boardId: $boardId) } `;
-
미해결쿠버네티스 101 - 클라우드/서버 개발 첫걸음
개발 환경에 소개해주신 것들은 직접 설치 하라는 의미인건가요?
개발 환경 강의에서 VS 에서 Google Cloud Code 이외 설치 영상은 없는데처음에 소개해줄 때 알아서 설치하라는 말씀이신가요? Google Cloud Code 익스텐션 설치 후 where.exe minicube 입력 시정보: 제공된 패턴에 해당되는 파일을 찾지 못했습니다.라고 떠서요.
-
미해결파이썬 무료 강의 (활용편3) - 웹 스크래핑 (5시간)
웹툰 사이트 body 안에가 안불러져옵니다.
<body> 태그 하위<div id="root"> 태그 하위에 실제 사이트 html이비어져서 옵니다.
-
해결됨카프카 완벽 가이드 - 커넥트(Connect) 편
connector 여러 개 생성 시 지연 현상 문의
안녕하세요 강의를 들으면서 cdc를 익히고 있는 수강생입니다.해당 강의 내용을 바탕으로 oracle --> kafka --> oracle 로 cdc 구성을 하고 있는데요. 구성 중 질문이 있어 남기게 되었습니다.A라는 테이블에 대해 source connector 와 sink connector 를 하나만 생성 했을 때는데이터 변경 시 정상적으로 빠르게 작동을 하는데요.추가적으로 B라는 테이블 source connector 와 sink connector 를 생성하면 A,B 모두 데이터 변경이 엄청 느립니다. 대략 5-10분 정도 뒤에 변경이 되는데요 원인이 무엇일까요? (sink 쪽에서 느립니다.)참고로 debezium 버전은 2.1 입니다.1.9에서는 최초 source connector 생성시 스냅샷 시간이 별로 걸리지 않았는데요, 2.1에서는 스냅샷 시간이 상당히 늘어났습니다. 혹시 다른 옵션이 있을까요? 매뉴얼에서는 찾지 못해 질문 드립니다."auto.evolve": "true" 옵션 사용 시 source 에서 컬럼을 추가하면 sink 에서도 생성이 되는 것은 확인했는데 source 에서 다시 컬럼을 삭제하면 sink 에서는 삭제가 안되는데요. 추가 해야 될 옵션이 있을까요? 아니면 아직 컬럼 삭제에 대한 지원이 되지 않는 것일 까요??참고로 제가 작성한 json 내용은 아래와 같습니다.#########################################################################################A 테이블 sourcecurl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/ -d '{"name": "source_connector_af_claim","config" : {"connector.class" : "io.debezium.connector.oracle.OracleConnector","db_type":"oracle","tasks.max" : "1", "database.server.name" : "source_connector_01_af_claim","database.user" : "xxxxx","database.password" : "xxxxx","database.url": "jdbc:oracle:thin:@10.74.102.218:1521:aaa","database.dbname" : "aaa","database.out.server.name":"ora_source_af_claim_out", "schema.history.internal.kafka.bootstrap.servers" : "10.74.105.61:9092","schema.history.internal.kafka.topic": "ora_source_af_claim_history", "include.schema.changes": "true","database.connection.adapter": "logminer","topic.prefix": "ORA_SOURCE_01", "schema.include.list": "xxxxx","table.include.list":"xxxxx.AF_CLAIM","include.schema.changes": "true", "auto.evolve": "true","time.precision.mode": "connect", "key.converter": "org.apache.kafka.connect.json.JsonConverter","value.converter": "org.apache.kafka.connect.json.JsonConverter", "snapshot.mode" : "initial", "tombstones.on.delete": "true", "transforms": "rename_topic","transforms.rename_topic.type" : "org.apache.kafka.connect.transforms.RegexRouter","transforms.rename_topic.regex" : "ORA_SOURCE_01(.*)","transforms.rename_topic.replacement" : "source_$1", "transforms": "unwrap","transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState","transforms.unwrap.drop.tombstones": "false" }}'#########################################################################################A 테이블 sinkcurl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/ -d '{"name": "sink_connector_af-claim","config": {"connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector","tasks.max": "1","table.name.format": "AF_CLAIM_TEST","topics": "ORA_SOURCE_01.xxxxx.AF_CLAIM", "connection.url": "jdbc:oracle:thin:@10.74.102.218:1521:aaa","connection.user": "xxxxx","connection.password": "xxxxx", "auto.evolve": "true","insert.mode": "upsert","delete.enabled": "true", "key.converter": "org.apache.kafka.connect.json.JsonConverter","value.converter": "org.apache.kafka.connect.json.JsonConverter", "table.include.list" : "xxxxx.AF_CLAIM","pk.fields": "AF_CLAIM_GROUP_NO , AF_CLAIM_NO","pk.mode": "record_key" }}'#########################################################################################B 테이블 sourcecurl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/ -d '{"name": "source_connector_af_cs_mgmt","config" : {"connector.class" : "io.debezium.connector.oracle.OracleConnector","db_type":"oracle","tasks.max" : "1", "database.server.name" : "source_connector_02_af_cs_mgmt","database.user" : "xxxxx","database.password" : "xxxxx","database.url": "jdbc:oracle:thin:@10.74.102.218:1521:aaa","database.dbname" : "aaa","database.out.server.name":"ora_source_af_cs_mgmt_out", "schema.history.internal.kafka.bootstrap.servers" : "10.74.105.61:9092","schema.history.internal.kafka.topic": "ora_source_af_cs_mgmt_history", "schema.include.list": "xxxxx","include.schema.changes": "true","database.connection.adapter": "logminer","topic.prefix": "ORA_SOURCE_02","table.include.list":"xxxxx.AF_CS_MGMT","include.schema.changes": "true", "auto.evolve": "true","time.precision.mode": "connect", "key.converter": "org.apache.kafka.connect.json.JsonConverter","value.converter": "org.apache.kafka.connect.json.JsonConverter", "snapshot.mode" : "schema_only", "tombstones.on.delete": "true", "transforms": "rename_topic","transforms.rename_topic.type" : "org.apache.kafka.connect.transforms.RegexRouter","transforms.rename_topic.regex" : "ORA_SOURCE_02(.*)","transforms.rename_topic.replacement" : "source_$1", "transforms": "unwrap","transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState","transforms.unwrap.drop.tombstones": "false" }}'#########################################################################################B 테이블 sinkcurl -i -X POST -H "Accept:application/json" -H "Content-Type:application/json" localhost:8083/connectors/ -d '{"name": "sink-connector_af_cs_mgmt","config": {"connector.class": "io.confluent.connect.jdbc.JdbcSinkConnector","tasks.max": "1","table.name.format": "AF_CS_MGMT_TEST","topics": "ORA_SOURCE_02.xxxxx.AF_CS_MGMT", "connection.url": "jdbc:oracle:thin:@10.74.102.218:1521:aaa","connection.user": "xxxxx","connection.password": "xxxxx", "auto.evolve": "true","insert.mode": "upsert","delete.enabled": "true", "key.converter": "org.apache.kafka.connect.json.JsonConverter","value.converter": "org.apache.kafka.connect.json.JsonConverter", "table.include.list" : "xxxxx.AF_CS_MGMT","pk.fields": "AFCR_NO","pk.mode": "record_key" }}'
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"
fetchPosts 함수 동작 순서 관련 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요.딜레이 되는 동안 AppLoading 컴포넌트가 보여지고, Error가 없다면 게시글 목록이 보이는 상태입니다. 에러가 발생하지 않았다면,로딩화면 보임-> 로딩화면 사라짐 -> 게시글 목록 데이터 표출으로 화면이 보여지는데요 제 의문은, 두 번째 이미지에 보이는 코드에서로딩화면 사라짐 -> 게시글 목록 데이터 표출은 정의된 적이 없는 것 같은데 이렇게 작동하는 것에 있습니다. try문에서 loading.value = true가 되어 로딩화면이 보이게 되고,그 상황에서 getPosts로 데이터를 뿌리게 됩니다.그리고나서 정상적으로 가져오고 나면finally문에서 loading.value = false가 되면서 로딩화면이 사라지게 되는거 아닌가요? 즉, fetchPosts 함수는로딩화면 보임 -> 로딩화면과 동시에 게시글 목록 데이터 표출 -> 로딩화면 사라짐을 명령하고 있는 상황 아닌가요?
-
미해결HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)
vscode 괄호 안에서 엔터 후 줄바꿈
선생님 안녕하세요! 현재 선생님강의와 프론트엔드 개발 공부를 함께하고있는데, 설정을 만지는 와중에 그랬는지 언제부턴가 중괄호 안에서 엔터를 치면 원래 괄호 사이에 빈 공간이 생기고 그 안에서 커서가 생겼는데, 지금은 사진과 같이 괄호 사이에 빈 공간이 없이 되어서 전처럼 하려면 어떻게해야할까요??
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
시즌3 예정에 열렬한 환호를 보냅니다.
시즌3 예정에 열렬한 환호를 보냅니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 회원정보 저장 오류
회원가입과 돌아오는 페이지는 정상으로 작동은 하나 h2에 저장 되지도 않고 강의 내용처럼 insert 문이 나오지 않습니다https://drive.google.com/file/d/1Mnh-hxiK1AQlaSlFOuuQrzRgAT0lEI9t/view?usp=sharing
-
미해결홍정모의 따라하며 배우는 C++
constexpr을 사용했을때의 장점
2.9강 9:10초 정도부터 컴파일 내에서 정해지는 상수를 정의할때 constexpr을 사용할 수 있다고 하셨는데 const말고 constexpr을 사용 했을때 장점이 무엇인가요?제가 생각했을때의 장점은 런타임중에 정해지는 상수에만 const를 쓰니까 컴파일중 정해지는 상수와 좀더 쉽게 구분할수 있다...정도인데 이게 constexpr을 쓰는 이유가 맞나요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨Microservice 설계(with EventStorming,DDD)
애그리거트 추출 질문드립니다.
안녕하세요 선생님,자세한 도메인 기술은 어렵다고 생각해서 간략하게 상황을 가정하겠습니다.기존에 있던 애그리거트는 한 뭉탱이로 돌아다녔는데기획이 변경되어 스토밍으로 추출했던 기존 애그리거트 루트와 VO 객체가 서로 생명주기가 다른 상황이 되었습니다.루트가 VO를 리스트로 가지고 있으며 루트가 생성되고 특정 이벤트 후에 VO가 생성되어 루트에 추가되고 일정시간이 지나면 VO를 업데이트 해야 하는 상황입니다.VO가 불변객체라 리스트에서 새로운 객체로 갈아치우 것도 아닌 거 같아서,, 현재 억지로 갈아치우게끔 만들어 놓긴 했습니다,,또, 아무리봐도 서로 생명주기가 달라 VO를 다른 애그리거트로 전환하려고 하는데제가 애그리거트들을 수정하는데 있어 근거가 부족하거나, 놓치는 부분이 있을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
findByName() 테스트 시 NoSuchElementException 에러
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]안녕하세요 강의 잘 보고 있습니다 ㅎㅎ다름이 아니라 저는 getter와 setter를 따로 작성하지 않고 Lombok을 이용해서 getter, builder 어노테이션으로 getter와 setter를 생성했는데요save() 테스트는 정상적으로 통과하지만findByNmae() 테스트 시에는 아래와 같은 오류가 발생합니다. 그리고 아래 처럼 get() 메서드에 노란 점선이 표시되며 옆에 이상한 문구가 뜨는데 lombok을 사용해서 발생한 오류일까요 ??스프링 부트 버전은 강의와 똑같이 2.3.1 버전을 사용중이며각 클래스별 코드는 아래와 같습니다.Memberpackage com.example.hellospring.domain; import lombok.Builder; import lombok.Getter; @Getter public class Member { private Long id; private String name; @Builder public Member(Long id, String name) { this.id = id; this.name = name; } } MemberRespositorypackage com.example.hellospring.repository; import com.example.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { // 회원 저장 Member save(Member member); // id로 회원 찾기 Optional<Member> findById(Long id); // Optional 타입은 값이 Null일 때 null 반환 // name으로 이름 찾기 Optional<Member> findByName(String name); // 전체 찾기 List<Member> findAll(); } MemoryMemberRepositorypackage com.example.hellospring.repository; import com.example.hellospring.domain.Member; import java.util.*; public class MemoryMemberRepository implements MemberRepository { private static Map<Long, Member> store = new HashMap<>(); private static long sequence = 0L; @Override public Member save(Member member) { Member.builder() .id(++sequence) .build(); store.put(member.getId(), member); return member; } @Override public Optional<Member> findById(Long id) { return Optional.ofNullable(store.get(id)); } @Override public Optional<Member> findByName(String name) { return store.values().stream() .filter(member -> member.getName().equals(name)) .findAny(); } @Override public List<Member> findAll() { return new ArrayList<>(store.values()); } }
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
강의자료 문의
안녕하세요. 강의에 첨부된 강의자료 이외에 도커 강의자료 관련 문의 드립니다. 인프런 아이디khd1692@naver.com구글 이메일kkt861104@gmail.com강의명풀스택을 위한 도커와 최신 서버기술 [풀스택 part3]
-
미해결
김영한님의 스프링강의 로드맵을 전체 구매하고싶은데 묶음으로 구매할 수 있나요 ??
로드맵 전체 구매 버튼이 따로 없어서 질문합니다.김영한님의 스프링강의 로드맵을 전체 구매하고싶은데 묶음으로 구매할 수 있나요 ??없다면 강의를 개별적으로 하나씩 구매해야할까요 ??
-
미해결함수형 프로그래밍과 JavaScript ES6+ 응용편
DB Insert관련
강의들으면서 공부할겸 게시판을 만들고 있는데예를 들어 이런 식의 html이 있고<input id='title'/><textarea id='content'/><button onclick="onSave">save</button> 실제 코드는 다른데 대략적으로 이런식의 자바스크립트 코드가 있다고 치면async onSave(event) { const param = { title: document.getelementByID('title').value, content: document.getelementByID('content').value } await _.go( [param], _.each(v => { //validation 함수 if (!v.title) {alert('title을입력하세요'); throw new Error(message);} } ), v=>insertData({data:v}), //db insert method _.tap(v=>{ alert('데이터저장성공'); location.href='list.html'; //게시글 작성후 list페이지로 redirect }) ) }이렇게 go에서 validation이나 redirect함수를 넣는것과아래처럼 따로 빼네는것async onSave(event) { const param = { title: document.getelementByID('title').value, content: document.getelementByID('content').value } if(!param.title) { alert('title을입력하세요'); return ; } await _.go( [param], v=>insertData({data:v}), _.tap(v=>{ alert('데이터저장성공') }) ) location.href='list.html'; }둘중 어떤것을 더 선호하고 효율적인지 알고싶습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
/hello 404에러
경로도 바탕화면에 두었다가 영어로 된 파일로 옮겼다가고 해보고, 이것저것 건드려 봤는데 404에러가 사라지지 않습니다. https://drive.google.com/file/d/1Ll-596n9jFVOQtlAAJpPz4_CsVO-dmuO/view?usp=sharing
-
미해결홍정모의 따라하며 배우는 C++
\a 가 소리가 안날때
지난강의에서도 그렇지만 \a가 비프음을 출력하는 기능..? 단어를 뭐라고 표현해야될지 모르겠지만 어쨌든 \a가 그런 역할을 하는데 제 컴퓨터에서는 소리가 안나서 어떤설정이 문제인지 궁금합니다.- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결Atlassian Jira Cloud 입문자를 위한 필수 강의 구성부터 관리까지
버젼 병합
안녕하세요 Jira에서 하고 있는 Version 3.1을 Version 3.0으로 병합하고 싶은데, 병합할 수 없다고 뜹니다.이럴 경우엔 버전을 새로 만들어야 하나요?