Quote Originariamente inviata da andbin Visualizza il messaggio
pom.xml
codice:
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>tuo.gruppo</groupId>
    <artifactId>prova-nashorn</artifactId>
    <version>0.0.1</version>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.openjdk.nashorn</groupId>
            <artifactId>nashorn-core</artifactId>
            <version>15.4</version>
        </dependency>
    </dependencies>

</project>

Cambia pure groupId/artifactId/version (quelli sotto modelVersion) e eventualmente versione di Java se non usi la 17.
Ma fatto questo e messo nei sorgenti quel sorgente Prova che ho postato prima (con o senza package, non fa differenza) .... deve funzionare.
Grazie @andbin, ma il pom.xml va nella cartella src?

Il "mio" programma, grazie alla mia ostinazione funziona abbastanza bene:

Computa correttamente un' espressione come:
expression = "12.0+3.0*sqrt(sin(tan(sqrt(12.0)+0.1)+0.1)+2.0*12 .0)^(abs(cos(1.4))+1.0/2.1)"

devo risolvere ancora:

*Difficolta

*Penso facile:
1) Controllo parentesi.
2) Assegnazione costanti.
3) Passaggio in input di valori non necessariamente double(non necessariamente terminanti con cifre dopo la virgola/punto)

*Penso difficile:
1) Gestione dei "Numeri negativi", in particolare operazioni del tipo in: (sgn num)^esp = (-2.0)^3 (rimanendo nei reali)
Qui dovrei salvare il segno in una variabile, ad esempio in questo caso potrebbe fare:

Per POTENZA:
se il sgn=- allora toglie il segno computa l'operazione e lo rimette se esp � dispari nell' blocco dell'elevamento a potenza.�

Per SOMMA(differenza) non ci sono problemi � sufficiente anteporre uno 0.0 prima del numero da sottrarre.

Per MOLTIPLICAZIONE e DIVISIONE:
computa -> expression = 0.0-4.0*5.0; quindi volendo anche: -4,0*5.0

Non computa:
num = -0,5*(-0.6) (Scritta cos� in modo corretto ovviamente)
Quindi pensavo di salvare il segno ed esguire sempre l' abs(num), per poi anteporlo ed eseguire le relative trasformazioni algebriche:, se "-" � ,moltiplicato per n "-" dispari... o pari...prende le misure...

Saluti e grazie.