idea 14(or maven) 未结束字符串字面值 非法的表达式开始

本文列举了一系列Java编译过程中出现的错误,并提供了针对IDEA和Maven项目的解决方案,包括设置正确的文件编码和调整Maven编译插件配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[ERROR] *.java:[38,27] 未结束的字符串字面值  
[ERROR] *.java:[38,53] 需要 ';'  
[ERROR] *.java:[41,19] 需要 ')'  
[ERROR] *.java:[41,12] 不是语句  
[ERROR] *.java:[41,23] 需要 ';'  
[ERROR] *.java:[41,26] 不是语句  
[ERROR] *.java:[41,33] 需要 ';'  
[ERROR] *.java:[53,27] 未结束的字符串字面值  
[ERROR] *.java:[53,54] 需要 ';'  
[ERROR] *.java:[56,4] 非法的表达式开始  
[ERROR] *.java:[56,11] 需要 ';'  
[ERROR] *.java:[56,19] 非法的表达式开始  
[ERROR] *.java:[56,36] 需要 ';'  
[ERROR] *.java:[56,54] 需要 ';'  
[ERROR] *.java:[56,63] 不是语句  
[ERROR] *.java:[56,72] 需要 ';'  
[ERROR] *.java:[60,4] 非法的表达式开始  
[ERROR] *.java:[60,12] 非法的表达式开始  
[ERROR] *.java:[60,27] 需要 ';'  
[ERROR] *.java:[60,51] 需要 ')'  
[ERROR] *.java:[60,55] 非法的表达式开始  
[ERROR] *.java:[60,56] 需要 ';'  
[ERROR] *.java:[60,30] 未结束的字符串字面值  
[ERROR] *.java:[63,30] 未结束的字符串字面值  
[ERROR] *.java:[66,30] 未结束的字符串字面值  
[ERROR] *.java:[96,30] 未结束的字符串字面值  
[ERROR] *.java:[99,30] 未结束的字符串字面值  
[ERROR] *.java:[102,30] 未结束的字符串字面值  
[ERROR] *.java:[130,27] 未结束的字符串字面值  
[ERROR] *.java:[130,34] 需要 ')'  
[ERROR] *.java:[131,22] 需要 ')'  
[ERROR] *.java:[131,20] 不是语句  
[ERROR] *.java:[131,24] 不是语句  
[ERROR] *.java:[131,25] 需要 ';'  
[ERROR] *.java:[131,29] 不是语句  
[ERROR] *.java:[131,32] 需要 ';'  
[ERROR] *.java:[131,36] 不是语句  
[ERROR] *.java:[131,39] 需要 ';'  
[ERROR] *.java:[138,10] 非法的类型开始  
[ERROR] *.java:[138,14] 需要 ';'  
[ERROR] *.java:[138,18] 非法的类型开始  
[ERROR] *.java:[138,21] 需要 ']'  
[ERROR] *.java:[138,22] 非法的类型开始  
[ERROR] *.java:[138,23] 需要 <标识符>  
[ERROR] *.java:[138,24] 需要 ';'  
[ERROR] *.java:[138,25] 非法的类型开始  
[ERROR] *.java:[138,26] 需要 <标识符>  
[ERROR] *.java:[138,27] 需要 ';'  
[ERROR] *.java:[138,33] 非法的类型开始  
[ERROR] *.java:[138,34] 未结束的字符串字面值  
[ERROR] *.java:[138,41] 需要 ';'  
[ERROR] *.java:[139,20] 非法的类型开始  
[ERROR] *.java:[139,31] 需要 ';'  
[ERROR] *.java:[140,10] 需要为 class、interface 或 enum  
[ERROR] *.java:[142,8] 需要为 class、interface 或 enum  
[ERROR] *.java:[148,8] 需要为 class、interface 或 enum  
[ERROR] *.java:[150,27] 未结束的字符串字面值  
[ERROR] *.java:[154,12] 需要为 class、interface 或 enum  
[ERROR] *.java:[155,12] 需要为 class、interface 或 enum  
[ERROR] *.java:[156,12] 需要为 class、interface 或 enum  
[ERROR] *.java:[158,8] 需要为 class、interface 或 enum  
[ERROR] *.java:[158,34] 未结束的字符串字面值  
[ERROR] *.java:[160,8] 需要为 class、interface 或 enum  
[ERROR] *.java:[162,8] 需要为 class、interface 或 enum  
[ERROR] -> [Help 1]  


idea解决办法:

Setting->File Encodings->IDE Encoding选择utf-8,不要选择“system default” 
同时,Default encoding for properties files 也选择 UTF-8



maven解决办法:

查找了资料,据说是历史原因,maven的核心插件之一---complier插件默认只支持编译Java 1.4,因此需要加上支持高版本jre的配置,在pom.xml里面加上

    <build>  
        <plugins>  
            <plugin>  
                <artifactId>maven-compiler-plugin</artifactId>  
                <configuration>  
                    <source>1.6</source>  
                    <target>1.6</target>  
                    <encoding>UTF-8</encoding>  
                </configuration>  
            </plugin>  
        </plugins>  
    </build>  


<think>好的,我现在需要帮助用户解决在IntelliJ IDEA中创建Maven项目并配置连接HiveServer2的问题。首先,我要回顾用户提供的系统级指令,确保回答符合格式要求,比如行内数学表达式用$...$,独立公式用$$...$$,但这个问题可能不涉及数学公式,所以可能不需要。然后要使用中文,生成相关问题,引用正确。 用户的需求是配置Maven项目连接HiveServer2,所以我要分步骤说明。首先需要确保用户安装了必要的软件,如IDEAMaven、Hadoop和Hive环境。然后,创建Maven项目,添加Hive JDBC依赖,比如Hive-JDBC的坐标,可能还需要Hadoop相关的依赖,因为连接Hive可能需要Hadoop的库。然后编写Java代码示例,使用JDBC连接HiveServer2,这里要注意驱动类名、连接URL格式,可能需要指定正确的Hive版本和端口。 接着,配置过程中可能会遇到的问题,比如驱动类找不到,这需要检查依赖是否正确,或者是否遗漏了Hadoop的依赖。用户提到的引用中有关于IDEA的问题和依赖配置的错误,比如引用[2]提到@Service导入错误或配置问题,引用[3]提到注解,可能和项目配置有关,但这里主要是JDBC连接,所以可能需要检查Maven依赖和项目结构。 可能还需要处理认证,如果HiveServer2启用了安全认证,比如用户名和密码,或者Kerberos,这里可能需要额外的配置步骤。此外,网络问题,比如端口是否开放,防火墙设置,也是常见的问题点。 然后,生成相关问题,比如如何解决ClassNotFoundException,如何配置认证,或者性能优化等。需要确保每个步骤清晰,引用相关部分,比如在添加依赖时引用[1]提到的Maven项目创建,或者在配置问题时引用[2]中的依赖错误。 最后,检查回答是否符合结构,分步骤说明,代码示例正确,问题相关且合理,引用标识正确放置。可能需要测试代码示例,确保语法正确,比如连接字符串是否正确,驱动类是否正确。同时,提醒用户注意Hive和Hadoop版本兼容性,因为不同版本可能需要不同的依赖版本。</think>### 在IntelliJ IDEA中创建Maven项目连接HiveServer2的配置教程 #### 1. 创建Maven项目 1. 打开IntelliJ IDEA,选择 **File → New → Project** 2. 左侧选择 **Maven**,设置JDK版本(需≥1.8),点击 **Next** 3. 填写GroupId(如`com.example`)和ArtifactId(如`hive-demo`),点击 **Finish** 参考引用[1]的Maven项目初始化流程[^1]。 #### 2. 添加Hive JDBC依赖 在`pom.xml`中添加以下依赖: ```xml <dependencies> <!-- Hive JDBC驱动 --> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <version>3.1.2</version> <!-- 需与HiveServer2版本一致 --> </dependency> <!-- Hadoop公共库 --> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>3.3.1</version> </dependency> </dependencies> ``` #### 3. 编写连接代码 创建Java类示例: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class HiveDemo { public static void main(String[] args) throws Exception { String driverName = "org.apache.hive.jdbc.HiveDriver"; String url = "jdbc:hive2://<hiveserver2-host>:10000/default"; String user = "<username>"; String password = "<password>"; Class.forName(driverName); try (Connection conn = DriverManager.getConnection(url, user, password); Statement stmt = conn.createStatement()) { ResultSet rs = stmt.executeQuery("SHOW TABLES"); while (rs.next()) { System.out.println(rs.getString(1)); } } } } ``` #### 4. 关键配置说明 - **驱动类名**:`org.apache.hive.jdbc.HiveDriver` - **连接URL格式**:`jdbc:hive2://[host]:[port]/[database]` - **端口默认值**:HiveServer2通常使用`10000`端口 - **认证配置**:若启用Kerberos需额外添加JAAS配置[^4] #### 5. 常见问题解决 - **ClassNotFoundException**:检查Maven依赖是否下载完整(IDEA右侧Maven面板点击刷新) - **连接超时**:确认HiveServer2服务状态及防火墙规则 - **认证失败**:参考引用[2]的配置扫描机制检查参数传递[^2]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值