Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java “上的错误”;“包不存在”;在使用Maven时_Java_Hibernate_Maven - Fatal编程技术网

Java “上的错误”;“包不存在”;在使用Maven时

Java “上的错误”;“包不存在”;在使用Maven时,java,hibernate,maven,Java,Hibernate,Maven,我正在使用Maven构建HelloWorld程序。但我失败了 mvn package 错误消息包括: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler- plugin:3.1:compile (default-compile) on project QuickStart: Compilation failure: Compilation failure: [ERROR] /Users/xxx/ja

我正在使用Maven构建HelloWorld程序。但我失败了

mvn package
错误消息包括:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-    plugin:3.1:compile (default-compile) on project QuickStart: Compilation failure: Compilation failure:
[ERROR] /Users/xxx/java/QuickStart/src/main/java/hello/Greeting.java:[3,43] package org.hibernate does not exist
[ERROR] /Users/xxx/java/QuickStart/src/main/java/hello/Greeting.java:[8,9] cannot find symbol
[ERROR] symbol:  class Session 
[ERROR] location: class hello.Greeting
我发现如果我手动编译Greeting.java,一切都会正常工作,原因是什么?多谢各位

java非常简单:

package hello;

import org.hibernate.Session;

public class Greeting {

    public Greeting() {
        Session session;
    }

}
我的pom.xml是从spring.io复制的:

  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>QuickStart</groupId>
    <artifactId>QuickStart</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>


    <dependencies>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>5.0.7.Final</version>
        </dependency>
    </dependencies>


</project>

4.0.0
快速启动
快速启动
1.0-快照
罐子
org.hibernate
冬眠核心
5.0.7.1最终版本

尝试添加此依赖项:

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
</dependency>

org.springframework
spring上下文支持

实际上,
org.springframework.context.support
不在pom.xml中的任何包中。 您需要添加
spring上下文支持
依赖项来运行此代码

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-context-support</artifactId>
   <version>${spring-framework-version}</version>
</dependency>

org.springframework
spring上下文支持
${spring框架版本}

虽然在您的情况下,这似乎不是问题,但当依赖项的作用域为运行时时,也可能出现这些症状,例如:

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.0.7.Final</version>
        <scope>runtime</scope>
    </dependency>

org.hibernate
冬眠核心
5.0.7.1最终版本
运行时
当然应该改成

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>5.0.7.Final</version>
    </dependency>

org.hibernate
冬眠核心
5.0.7.1最终版本

请注意,您还应该在pom中定义一个
spring framework版本
属性,否则这将不起作用。谢谢。我使用hibernate将我的示例更改为易于理解的示例。但问题依然存在。我该怎么办?手动complie Greeting.java工作…这是正确的方法,因为您也有父BOM。谢谢。我使用hibernate将我的示例更改为易于理解的示例。但问题依然存在。我该怎么办?手动complie Greeting.java工作。。。