1.环境准备
JDK1.8+ , Intellj IDEA
1.linux上编译好fe前端代码,主要目的是获取自动生成的代码,加入到前段工程里面去用于在idea中编译fe工程
在linux下,进入到源码目录,执行下面的命令:
$ sh build.sh --clean --fe
然后将 gensrc目录打包,拿出来,如下图
2.在windows下解压gensrc.tar.gz,解压后的目录如下图:
3.进入build/java,将红色框出的部分整个拷贝到源码的fe/src/main/java目录下
2.调试
1. 用idea导入fe工程;
2.在fe目录下创建下面红框标出的目录,并将webroot里的内容拷贝进去
3.配置conf/fe.conf
下面是我自己的配置,你可以根据自己的需要进行修改
# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. ##################################################################### ## The uppercase properties are read and exported by bin/start_fe.sh. ## To see all Frontend configurations, ## see fe/src/org/apache/doris/common/Config.java ##################################################################### # the output dir of stderr and stdout LOG_DIR = ${DORIS_HOME}/log DATE = `date +%Y%m%d-%H%M%S` JAVA_OPTS="-Xmx2048m -XX:+UseMembar -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xloggc:$DORIS_HOME/log/fe.gc.log.$DATE" # For jdk 9+, this JAVA_OPTS will be used as default JVM options JAVA_OPTS_FOR_JDK_9="-Xmx4096m -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xlog:gc*:$DORIS_HOME/log/fe.gc.log.$DATE:time" ## ## the lowercase properties are read by main program. ## # INFO, WARN, ERROR, FATAL sys_log_level = INFO # store metadata, create it if it is not exist. # Default value is ${DORIS_HOME}/doris-meta # meta_dir = ${DORIS_HOME}/doris-meta http_port = 8030 rpc_port = 9020 query_port = 9030 edit_log_port = 9010 mysql_service_nio_enabled = true # Choose one if there are more than one ip except loopback address. # Note that there should at most one ip match this list. # If no ip match this rule, will choose one randomly. # use CIDR format, e.g. 10.10.10.0/24 # Default value is empty. # priority_networks = 10.10.10.0/24;192.168.0.0/16 # Advanced configurations # log_roll_size_mb = 1024 # sys_log_dir = ${DORIS_HOME}/log # sys_log_roll_num = 10 # sys_log_verbose_modules = # audit_log_dir = ${DORIS_HOME}/log # audit_log_modules = slow_query, query # audit_log_roll_num = 10 # meta_delay_toleration_second = 10 # qe_max_connection = 1024 # max_conn_per_user = 100 # qe_query_timeout_second = 300 # qe_slow_log_ms = 5000
4.设置环境变量
在IDEA中设置运行环境变量
5.启动fe
下面你就可以愉快的启动,调试你的FE了