AlgoUtils
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>io.github.charlottekies</groupId>
<artifactId>AlgoUtils</artifactId>
<version>1.0</version>
</dependency><?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>
<!-- "Some" metadata required by Maven Central. They help in indexing and in various tooling like IDEs. -->
<!-- This is important for Central publishing: use a namespace that is granted for you.
Easiest for personal projects: GitHub account
-->
<groupId>io.github.charlottekies</groupId>
<artifactId>AlgoUtils</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<!-- Name and description are also required for Central -->
<name>Algorithm Utilities for Java</name>
<description>
A Java utility package for searching, sorting, optimization, string manipulation, and mathematical operations, implemented with optimized algorithm patterns.
</description>
<organization>
<name>Charlotte Kies</name>
</organization>
<url>https://github.com/charlottekies/algo-utils</url>
<developers>
<developer>
<name>Charlotte Kies</name>
</developer>
</developers>
<scm>
<url>https://github.com/charlottekies/algo-utils</url>
<connection>scm:git:git://github.com/charlottekies/algo-utils.git</connection>
<!--
developerConnection is used by e.g. maven-release-plugin to push changes to the repo.
-->
<developerConnection>scm:git:ssh://git@github.com:/charlottekies/algo-utils.git</developerConnection>
<tag>AlgoUtils-1.0</tag>
</scm>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/charlottekies/algo-utils/issues</url>
</issueManagement>
<licenses>
<license>
<name>Apache 2</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<!-- That's "all" metadata that is needed for Central. -->
<properties>
<maven.compiler.source>22</maven.compiler.source>
<maven.compiler.target>22</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- JUnit Platform Launcher to run tests from the console -->
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-console-standalone</artifactId>
<version>1.8.2</version> <!-- Make sure to use the correct version -->
<scope>test</scope>
</dependency>
<!-- JUnit Jupiter Engine for running tests -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.12.0</version>
<scope>test</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.6.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.10.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.4</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- The configuration below automatically enables the release profile we created earlier,
so you no longer need to remember to activate it manually.
For my libraries, once I’ve completed a development iteration and all changes are committed,
execute:
mvn release:prepare release:perform
1. Makes sure all code is committed and tests pass
2. Removes -SNAPSHOT from the version number, commits this to Git, and tags a release.
3. Updates the version number to be ready for the next development iteration (increments + adds -SNAPSHOT) and commits this to the repository.
4. Checks out a clean source from the repository (with the tagged release) and makes a clean build (so that no accidental files get to your artifacts) with the release profile.
5. Deploys all artifacts to a staging repository in central.sonatype.com.
With the configuration we set below, they are automatically published to Maven Central after the staging repository performs validity checks.
If you disable autoPublish, you can make final checks on your artifacts before manually releasing them to Central, where they cannot be removed once published.
-->
<plugin>
<!-- Fixing version & activating "release" profile for those who use release plugin -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<autoVersionSubmodules>true</autoVersionSubmodules>
<!-- Forward compatibility: "release-profile" will be removed from super POM.
It's better to define javadocs, sources, signing, etc. in an independent "release" profile. -->
<useReleaseProfile>false</useReleaseProfile>
<releaseProfiles>release</releaseProfiles>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>