Je reçois une erreur en disant que j'ai un fichier qui est trop long dans SSB.
[info] Compiling 29 Scala sources to /home/chris/dev/suredbits-core/target/scala-2.11/classes...
[error] File name too long
[error] one error found
[error] (compile:compile) Compilation failed
[error] Total time: 7 s, completed Feb 17, 2015 8:10:25 AM
Comment savoir quel fichier est trop long pour pouvoir le raccourcir? J'ai ajouté l'indicateur de compilation -Xmax-classfile-name
et le fixe à 254.
Voici comment j'ai résolu mon problème
mkdir /tmp/myproject-target
cd ~/workspace/myproject
rm -rf target
ln -s /tmp/myproject-target target
Si votre /home
est un système de fichiers crypté (par exemple, LUKS), vous pouvez rencontrer ce problème.
Définir max-classfile-name
à 254 est la valeur par défaut (ou peut-être 255) - vous ne le réduisez donc pas beaucoup. Vous devriez probablement envisager quelque chose de plus proche d'une longueur maximale de 70 - 100. Vous pouvez le définir pour tous vos projets en créant ~/.sbt/0.13/local.sbt
avec le paramètre scalac:
scalacOptions ++= Seq("-Xmax-classfile-name","78")
J'ai rencontré ce problème dans IntelliJ Ultimate 2016.1.2 (qui ressemble à Intellij 14). Je l'ai résolu en mettant:
-Xmax-classfile-name 78
Dans Fichier> Paramètres ...> Générer, Exécuter, Déployer> Compilateur> Compilateur Scala> Options de compilateur supplémentaires .
REMARQUE: il y a un espace entre le nom de l'option et sa valeur ("78"), et non un signe égal.
Je veux proposer une approche différente:
Il est possible de créer le conteneur avec un mot de passe complexe et de le monter à la connexion.
veracrypt -t --pim = 0 --protect-hidden = no -k "" -p $ MOT DE PASSE $ ENCRYPTED_CONTAINER $ MOUNT_DIR
Essayez d’utiliser un script Shell comme ceci:
#!/bin/sh
for file in *; do {
echo -m "$file" | wc -m;
echo "$file"
}
done
L'exécuter dans votre répertoire src/main/scala devrait vous montrer quels fichiers ont un nom avec plus de 254 caractères. J'espère que cela répond à votre question.