Я создал простой проект maven для создания заштрихованной банки. Я построил его, используя mvn clean compile. Он создает jar-файл, но после его извлечения я не вижу файлы .class, соответствующие моим исходным файлам java проекта. Я вижу отчетливо ниже сообщения, когда я строю, но не вижу никаких файлов .class в целевом каталоге.файлы классов, не созданные под целевым каталогом maven в IntelliJ
[INFO] --- Maven-компилятор-плагин: 3,1: компилировать (по умолчанию-компиляция) @ PersonalizationFeeder ---
обнаружено [INFO] Изменения - Перекомпилировав модуль!
[ПРЕДУПРЕЖДЕНИЕ] Кодировка файла не установлена с использованием кодирования платформы UTF-8, то есть сборка зависит от платформы!
[INFO] Компиляция 10 исходных файлов в документы/персонализацияFeeder/target/classes [INFO] --------------------------- ---------------------------------------------
[ INFO] BUILD SUCCESS
В чем проблема? Мой 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">
<parent>
<artifactId>data-analytics</artifactId>
<groupId>com.wooplr</groupId>
<version>0.0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>PersonalizationFeeder</artifactId>
<packaging>jar</packaging>
<properties>
<userlib.dir>Documents/userlibs</userlib.dir>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>${spark.version}</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming-kafka_2.10</artifactId>
<version>${spark.version}</version>
</dependency>
<dependency>
<groupId>com.wooplr</groupId>
<artifactId>jedis</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${userlib.dir}/jedis-2.7.3.jar</systemPath>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<exclude>junit:junit</exclude>
<exclude>org.apache.maven:lib:tests</exclude>
</excludes>
</artifactSet>
<filters>
<filter>
<!--<artifact>*:*</artifact>-->
<excludes>
<excludeScope>system</excludeScope>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
Что у вас есть в 'Documents/PersonalizationFeeder/target/classes'? Что вы ожидаете, неясно, и что IntelliJ делает в этом? –
Почему вы явно указали расположение исходных файлов java (' src/main/java sourceDirectory>'). Это не обязательно. Как выглядит банка, если вы удалите «maven-shade-plugin». –
uniknow
@RC: Documents/PersonalizationFeeder/target/classes каталог пуст. Действительно, он должен создавать файлы .class из исходных файлов? Я ожидаю, что моя затененная банка (после ее создания) должна содержать файлы .class моих исходных файлов. Но я их не вижу. Я делаю что-то не так? – user553182