link-tracker

Форк
0
/
pom.xml 
306 строк · 12.5 Кб
1
<?xml version="1.0" encoding="UTF-8"?>
2
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
3
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4
    <modelVersion>4.0.0</modelVersion>
5

6
    <groupId>edu.java</groupId>
7
    <artifactId>root</artifactId>
8
    <version>${revision}</version>
9
    <packaging>pom</packaging>
10

11
    <properties>
12
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
13
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
14

15
        <maven.version>3.8.6</maven.version>
16
        <jdk.version>21</jdk.version>
17
        <java.release>21</java.release>
18

19
        <revision>0.1</revision>
20

21
        <skip.unit.tests>false</skip.unit.tests>
22

23
        <!-- Spring -->
24
        <spring-boot.version>3.2.2</spring-boot.version>
25
        <spring-cloud.version>2023.0.0</spring-cloud.version>
26

27
        <!-- Other -->
28
        <jetbrains-annotations.version>24.1.0</jetbrains-annotations.version>
29
        <java-telegram-bot-api.version>7.0.1</java-telegram-bot-api.version>
30
        <apache-commons-text.version>1.11.0</apache-commons-text.version>
31

32
        <!-- Tests -->
33
        <testcontainers.version>1.19.4</testcontainers.version>
34
        <wiremock.version>3.3.1</wiremock.version>
35

36
        <!-- Plugins -->
37
        <maven-compiler-plugin.version>3.12.1</maven-compiler-plugin.version>
38
        <maven-failsafe-plugin.version>3.2.5</maven-failsafe-plugin.version>
39
        <maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version>
40
        <maven-enforcer-plugin.version>3.4.1</maven-enforcer-plugin.version>
41
        <git-commit-id-maven-plugin.version>7.0.0</git-commit-id-maven-plugin.version>
42
        <jacoco-maven-plugin.version>0.8.11</jacoco-maven-plugin.version>
43

44
        <!-- Linters -->
45
        <maven-checkstyle-plugin.version>3.3.1</maven-checkstyle-plugin.version>
46
        <checkstyle.version>10.12.7</checkstyle.version>
47
    </properties>
48

49
    <modules>
50
        <module>bot</module>
51
        <module>scrapper</module>
52
    </modules>
53

54
    <dependencyManagement>
55
        <dependencies>
56
            <dependency>
57
                <groupId>com.github.pengrad</groupId>
58
                <artifactId>java-telegram-bot-api</artifactId>
59
                <version>${java-telegram-bot-api.version}</version>
60
            </dependency>
61
            <dependency>
62
                <groupId>org.wiremock</groupId>
63
                <artifactId>wiremock</artifactId>
64
                <version>${wiremock.version}</version>
65
            </dependency>
66
            <dependency>
67
                <groupId>org.wiremock</groupId>
68
                <artifactId>wiremock-standalone</artifactId>
69
                <version>${wiremock.version}</version>
70
            </dependency>
71

72
            <dependency>
73
                <groupId>org.testcontainers</groupId>
74
                <artifactId>testcontainers-bom</artifactId>
75
                <version>${testcontainers.version}</version>
76
                <type>pom</type>
77
                <scope>import</scope>
78
            </dependency>
79

80
            <dependency>
81
                <groupId>org.springframework.cloud</groupId>
82
                <artifactId>spring-cloud-dependencies</artifactId>
83
                <version>${spring-cloud.version}</version>
84
                <type>pom</type>
85
                <scope>import</scope>
86
            </dependency>
87

88
            <dependency>
89
                <groupId>org.springframework.boot</groupId>
90
                <artifactId>spring-boot-dependencies</artifactId>
91
                <version>${spring-boot.version}</version>
92
                <type>pom</type>
93
                <scope>import</scope>
94
            </dependency>
95
        </dependencies>
96
    </dependencyManagement>
97

98
    <dependencies>
99
        <dependency>
100
            <groupId>org.jetbrains</groupId>
101
            <artifactId>annotations</artifactId>
102
            <version>${jetbrains-annotations.version}</version>
103
            <scope>provided</scope>
104
        </dependency>
105

106
        <!-- Tests -->
107
        <dependency>
108
            <groupId>org.assertj</groupId>
109
            <artifactId>assertj-core</artifactId>
110
            <scope>test</scope>
111
        </dependency>
112
        <dependency>
113
            <groupId>org.junit.jupiter</groupId>
114
            <artifactId>junit-jupiter-api</artifactId>
115
            <scope>test</scope>
116
        </dependency>
117
        <dependency>
118
            <groupId>org.junit.jupiter</groupId>
119
            <artifactId>junit-jupiter-engine</artifactId>
120
            <scope>test</scope>
121
        </dependency>
122
        <dependency>
123
            <groupId>org.junit.jupiter</groupId>
124
            <artifactId>junit-jupiter-params</artifactId>
125
            <scope>test</scope>
126
        </dependency>
127
        <dependency>
128
            <groupId>org.apache.commons</groupId>
129
            <artifactId>commons-text</artifactId>
130
            <version>${apache-commons-text.version}</version>
131
        </dependency>
132
    </dependencies>
133

134
    <build>
135
        <plugins>
136
            <plugin>
137
                <groupId>org.apache.maven.plugins</groupId>
138
                <artifactId>maven-enforcer-plugin</artifactId>
139
            </plugin>
140
            <plugin>
141
                <groupId>org.jacoco</groupId>
142
                <artifactId>jacoco-maven-plugin</artifactId>
143
                <version>${jacoco-maven-plugin.version}</version>
144
            </plugin>
145

146
        </plugins>
147

148
        <pluginManagement>
149
            <plugins>
150
                <!-- Spring Boot -->
151
                <plugin>
152
                    <groupId>org.springframework.boot</groupId>
153
                    <artifactId>spring-boot-maven-plugin</artifactId>
154
                    <version>${spring-boot.version}</version>
155
                    <configuration>
156
                        <layers>
157
                            <enabled>true</enabled>
158
                        </layers>
159
                        <excludes>
160
                            <exclude>
161
                                <groupId>org.projectlombok</groupId>
162
                                <artifactId>lombok</artifactId>
163
                            </exclude>
164
                        </excludes>
165
                    </configuration>
166
                    <executions>
167
                        <execution>
168
                            <goals>
169
                                <goal>repackage</goal>
170
                                <goal>build-info</goal>
171
                            </goals>
172
                        </execution>
173
                    </executions>
174
                </plugin>
175

176
                <plugin>
177
                    <groupId>io.github.git-commit-id</groupId>
178
                    <artifactId>git-commit-id-maven-plugin</artifactId>
179
                    <version>${git-commit-id-maven-plugin.version}</version>
180
                    <executions>
181
                        <execution>
182
                            <goals>
183
                                <goal>revision</goal>
184
                            </goals>
185
                        </execution>
186
                    </executions>
187
                    <configuration>
188
                        <verbose>true</verbose>
189
                        <dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
190
                        <generateGitPropertiesFile>true</generateGitPropertiesFile>
191
                        <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties
192
                        </generateGitPropertiesFilename>
193
                    </configuration>
194
                </plugin>
195

196
                <!-- Compiler -->
197
                <plugin>
198
                    <groupId>org.apache.maven.plugins</groupId>
199
                    <artifactId>maven-compiler-plugin</artifactId>
200
                    <version>${maven-compiler-plugin.version}</version>
201
                    <configuration>
202
                        <release>${java.release}</release>
203
                        <parameters>true</parameters>
204

205
                        <compilerArgument>-Xlint:all</compilerArgument>
206
                        <compilerArgument>-Xdoclint:all</compilerArgument>
207
                    </configuration>
208
                </plugin>
209

210
                <!-- Tests-->
211
                <plugin>
212
                    <groupId>org.apache.maven.plugins</groupId>
213
                    <artifactId>maven-surefire-plugin</artifactId>
214
                    <version>${maven-surefire-plugin.version}</version>
215
                    <configuration>
216
                        <skip>${skip.unit.tests}</skip>
217
                    </configuration>
218
                </plugin>
219
                <plugin>
220
                    <groupId>org.apache.maven.plugins</groupId>
221
                    <artifactId>maven-failsafe-plugin</artifactId>
222
                    <version>${maven-failsafe-plugin.version}</version>
223
                    <configuration>
224
                        <classesDirectory>${project.build.outputDirectory}</classesDirectory>
225
                    </configuration>
226
                    <executions>
227
                        <execution>
228
                            <goals>
229
                                <goal>integration-test</goal>
230
                                <goal>verify</goal>
231
                            </goals>
232
                        </execution>
233
                    </executions>
234
                </plugin>
235
                <plugin>
236
                    <groupId>org.jacoco</groupId>
237
                    <artifactId>jacoco-maven-plugin</artifactId>
238
                    <version>${jacoco-maven-plugin.version}</version>
239
                    <executions>
240
                        <execution>
241
                            <goals>
242
                                <goal>prepare-agent</goal>
243
                            </goals>
244
                        </execution>
245
                        <execution>
246
                            <id>report</id>
247
                            <phase>prepare-package</phase>
248
                            <goals>
249
                                <goal>report</goal>
250
                            </goals>
251
                        </execution>
252
                    </executions>
253
                </plugin>
254

255
                <!-- Checkers -->
256
                <plugin>
257
                    <groupId>org.apache.maven.plugins</groupId>
258
                    <artifactId>maven-enforcer-plugin</artifactId>
259
                    <version>${maven-enforcer-plugin.version}</version>
260
                    <executions>
261
                        <execution>
262
                            <id>enforce-java</id>
263
                            <phase>validate</phase>
264
                            <goals>
265
                                <goal>enforce</goal>
266
                            </goals>
267
                            <configuration>
268
                                <rules>
269
                                    <requireJavaVersion>
270
                                        <version>[${jdk.version},)</version>
271
                                        <message>JDK version must be at least ${jdk.version}</message>
272
                                    </requireJavaVersion>
273
                                    <requireMavenVersion>
274
                                        <version>[${maven.version},)</version>
275
                                        <message>Maven version should, at least, be ${maven.version}</message>
276
                                    </requireMavenVersion>
277
                                    <banDuplicatePomDependencyVersions/>
278
                                    <reactorModuleConvergence/>
279
                                </rules>
280
                            </configuration>
281
                        </execution>
282
                    </executions>
283
                </plugin>
284
                <plugin>
285
                    <groupId>org.apache.maven.plugins</groupId>
286
                    <artifactId>maven-checkstyle-plugin</artifactId>
287
                    <version>${maven-checkstyle-plugin.version}</version>
288
                    <dependencies>
289
                        <dependency>
290
                            <groupId>com.puppycrawl.tools</groupId>
291
                            <artifactId>checkstyle</artifactId>
292
                            <version>${checkstyle.version}</version>
293
                        </dependency>
294
                    </dependencies>
295
                    <configuration>
296
                        <configLocation>checkstyle.xml</configLocation>
297
                        <suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation>
298
                        <consoleOutput>true</consoleOutput>
299
                        <logViolationsToConsole>true</logViolationsToConsole>
300
                        <failsOnError>true</failsOnError>
301
                    </configuration>
302
                </plugin>
303
            </plugins>
304
        </pluginManagement>
305
    </build>
306
</project>
307

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.