FROM adoptopenjdk/openjdk11:jdk-11.0.10_9-alpine as build
COPY . /srv
RUN cd /srv && chmod +x mvnw && ./mvnw clean package
FROM adoptopenjdk/openjdk11:jdk-11.0.10_9-alpine
WORKDIR /srv
COPY --from=build /srv/target/{JAR_NAME}.jar /srv/{JAR_NAME}.jar
ENTRYPOINT exec java -jar /srv/{JAR_NAME}.jarmvn clean packagejava -jar /srv/{JAR_NAME}.jar      Аннотации представляют собой некие метаданные, которые могут добавлятся в исходный код программы и семантически не влияют на нее, но могут использоваться в процессе анализа кода, компиляции и даже во время выполнения.
RetentionPolicy.SOURCE - аннотация используется на этапе компиляции и должна отбрасываться компилятором;
RetentionPolicy.CLASS - аннтоация будет записана в class-файл компилятором, но не должна быть доступна во время выполнения (runtime);
RetentionPolicy.RUNTIME - аннотация будет записана в class-файл и доступна во время выполнения через reflection.
@SQLString(30) String firstName;Heroku currently uses OpenJDK 8 to run your application by default.
Heroku currently uses OpenJDK 8 to run your application by default. OpenJDK versions 17, 15, 13, 11, and 7 are also available. Depending on the major version you select the latest available update of that JDK will be used each time you deploy your app.
Current default versions are:
    Java 7 - 1.7.0_332
    Java 8 - 1.8.0_322
    Java 11 - 11.0.14
    Java 13 - 13.0.10
    Java 15 - 15.0.6
    Java 17 - 17.0.2простое нажатие на хедер таблицы
Thymeleaf, как добавить значение по умолчанию для параметра, если он отсутствует при нажатии на ссылку?
.on('click', function(){}) или .click()MANIFEST/MANIFEST.mffolder/package1/Dime2.java
folder/package1/Dime2.class
folder/MANIFEST.mfjavac Dime2.javajar cfm dime.jar MANIFEST.mf package1/*.classMain-Class: package1.Dime2package package1;
public class Dime2{
    public static void main(String [] args){
        try{
            System.out.println("Hello world");
            Thread.sleep(10000);
        } catch(Exception exc){}
    }
}chmod a+x dime.jarjava -jar dime.jarth:inline<h4 th:inline="text">[[${product.name}]]<span th:text="${product.getPrice()}">45</span></h4>smtp.gmail.rusmtp.gmail.commessage.setFrom(new InternetAddress("maksimovm117@gmail.com"));
            message.setRecipient(Message.RecipientType.TO, new InternetAddress("maksimovm117@gmail.com"));smtp.gmail.com
Требуется SSL: да
Требуется TLS: да (при наличии)
Требуется аутентификация: да
Порт для SSL: 465
Порт для TLS/STARTTLS: 587как мне обратиться к этому обьекту из другого класа?
псевдокод
class Circle extends Shape {}
class Triangle extends Shape {}
public class Main { void main() }class Circle extends Shape { void main() }
class Triangle extends Shape { void main() }
т.е. каждый pojo класс должен содержать точку входа, что странно...
И еще один совет, осознанно давайте названия переменным, классам, методам. 
А то <code>Circle kub</code> (Круг квадрат) ну сами понимаете.interface Animal {}
class Dog implements Animal {}
class Cat implements Animal {}connect() & disconnect()inteface Connection {
connect(){}
disconnect{}
}class MySQLConnection implements Connection {}
class PostgreSQL implements Connection {}connect() & disconnect() реализуются.Connection c = new MySQLConnection();
c.connect();new MySQLConnection();      Я только учусь и просьба быть терпимым к такому тупому вопросу:(
Нашел вариант только с DataTables CDN, но там не происходит обращение к БД
Этот вариант исключается. Я точно уверен, что в файле разделитель присутствует.
public static String getFirstLine(String line) {
        String[] lines = line.split("-");
        return lines[0];
    }
    public static String getSecondLine(String line) {
        String[] lines = line.split("-");
        return lines[1];
    }english.txt
for (int i = 0; i < size; i++) {
            words.add(getFirstLine(list.get(i)));
            translation.add(getSecondLine(list.get(i)));
        }