maven 添加 war 依赖关系未解决?

maven added war dependency not resolved?

我几天前开始使用 maven,我试图使用 jquery 日历工具,所以当我尝试添加依赖项时,maven 放置了一个 WAR 依赖项,我很好奇,我打开它并实际上它包含必要的导入 类。 但是我的 IDE 告诉我导入没有解决!!!我不明白发生了什么,我搜索了解什么是 war,我发现那是网络 java 应用程序。不能将 war 用作库吗?这是我的导入不起作用的原因吗?

在我的 pom 下方,设置 xml 文件并在 java 代码中导入

pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <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>com.mycompany</groupId>
        <artifactId>gestion_stock</artifactId>
        <version>1.0-SNAPSHOT</version>
        <packaging>jar</packaging>

        <repositories>
            <repository>
                <id>sonatype-snapshots</id>
                <name>Sonatype Snapshots Repository</name>
                <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories> 

        <dependencies>
            <dependency>
                <groupId>com.googlecode.wicket-jquery-ui</groupId>
                <artifactId>wicket-jquery-ui</artifactId>
                <version>8.0.0-M3</version>
            </dependency>
            <dependency>
                <groupId>com.googlecode.wicket-jquery-ui</groupId>
                <artifactId>jquery-ui-calendar</artifactId>
                <version>6.2.2</version>
            </dependency>
            <dependency>
                <groupId>com.googlecode.wicket-jquery-ui</groupId>
                <artifactId>jquery-ui-core</artifactId>
                <version>6.2.2</version>
            </dependency>
            <dependency>
                <groupId>org.wicketstuff</groupId>
                <artifactId>wicketstuff-bundle</artifactId>
                <version>8.0.0-SNAPSHOT</version>
                <type>jar</type>
            </dependency>
            <dependency>
                <groupId>com.googlecode.wicket-jquery-ui</groupId>
                <artifactId>wicket-jquery-ui-calendar</artifactId>
                <version>8.0.0-SNAPSHOT</version>
                <type>jar</type>
            </dependency>
            <dependency>
                <groupId>com.googlecode.wicket-jquery-ui</groupId>
                <artifactId>wicket-jquery-ui-samples</artifactId>
                <version>8.0.0-SNAPSHOT</version>
                <type>war</type>
            </dependency>
        </dependencies>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <maven.compiler.source>1.8</maven.compiler.source>
            <maven.compiler.target>1.8</maven.compiler.target>
        </properties>
    </project>

setting.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
        User-specific configuration for maven. Includes things that should not 
        be distributed with the pom.xml file, such as developer identity, along with 
        local settings, like proxy information. The default location for the
        settings file is ~/.m2/settings.xml 
    -->
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
        <!--proxies>
            <proxy>
                <host>my.proxy.host</host>
            </proxy>
        </proxies-->

        <!--pluginGroups>
            <pluginGroup>org.codehaus.mojo</pluginGroup>
        </pluginGroups-->
    </settings>

ExtendedCalendarPage.java

    package com.talcorp.gestion_stock;

    import java.time.LocalDateTime;
    import java.time.temporal.ChronoUnit;
    import java.util.Date;

    import org.apache.wicket.ajax.AjaxRequestTarget;
    import org.apache.wicket.markup.html.form.Form;
    import org.apache.wicket.markup.html.panel.FeedbackPanel;

    import com.googlecode.wicket.jquery.core.Options;
    import com.googlecode.wicket.jquery.ui.calendar.Calendar;
    import com.googlecode.wicket.jquery.ui.calendar.CalendarView;
    import com.googlecode.wicket.jquery.ui.panel.JQueryFeedbackPanel;
    // the non working imports in the wicket-jquery-ui-samples-8.0.0-SNAPSHOOT.war
    import com.googlecode.wicket.jquery.ui.samples.component.DemoCalendarDialog;
    import com.googlecode.wicket.jquery.ui.samples.data.DemoCalendarEvent;
    import com.googlecode.wicket.jquery.ui.samples.data.DemoCalendarModel;
    import com.googlecode.wicket.jquery.ui.samples.data.dao.CalendarDAO;

    public class ExtendedCalendarPage extends AbstractCalendarPage
    {
            private static final long serialVersionUID = 1L;

            private Calendar calendar;

            .

            .

            .

    }

注意:war 存储在项目中名为:Non-classpath-dependencies

的文件中

谢谢

Maven 有一个针对这种情况的插件,它应该出现在 war application/library - 它创建了一个 类 工件。

<plugin>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1.1</version>
    <configuration>
        <attachClasses>true</attachClasses>
    </configuration>
</plugin>

这个,你可以在你的项目中参考下面的使用

<dependency>
    <groupId>your-group-id</groupId>
    <artifactId>your-artifact-id</artifactId>
    <version>your-version</version>
    <classifier>classes</classifier>
</dependency>