IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Maven Java Discussion :

Erreur "Potential violation of Law of Demeter (object not created locally)"


Sujet :

Maven Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Par défaut Erreur "Potential violation of Law of Demeter (object not created locally)"
    Bonjour,

    Ayant développé un logiciel se servant de fichier avec Java, j'ai souhaité m'essayer a l'utilisation de Maven..
    La correction des erreurs générales du a la décomposition des instructions, au renommage etc ... est effectué sans peine. Mais un même type d'erreur persiste et je n'arrive pas a me documenter et à trouver une solution pour le résoudre..

    L'erreur récurrente est la suivante :
    Potential violation of Law of Demeter (object not created locally)
    Voici deux exemples de code où cette erreur est présente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     tabTypesM[compteur] = unTypeM.toString();
    ...
     if (nomfic.equals(ficBase) || nomfic.equals(ficAvance)){}
    Quelqu'un saurait-il m'indiquer comment résoudre ce problème ?

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Grosso modo, la loi de demeter dit "on ne tripatouille pas un objet retourné par un autre objet qu'on a reçu en paramètre, car ça peut avoir des effets de bord".

    En pratique, si t'as ce message, c'est que t'as configuré ton maven avec des plugin vachement agressif sur la validation de contenu. Personellement, cette loi je m'en contrefiche

    Affiche nous ton pom.xml, je suis sur que tu as mis plein de trucs inutiles dedans

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Par défaut
    Merci pour ta réponse,

    En effet en effectuant quelques recherches j'ai remarqué qu'il y avait la possibilité de masquer ces erreurs dites "Potentielles".

    Voici le contenu de mon fichier pom.xml:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    <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>
     
     
      <groupId>blabla</groupId>
      <artifactId>blabla</artifactId>
      <version>1.0-SNAPSHOT</version>
      <packaging>jar</packaging>
     
      <name>Datatypes</name>
      <url>http://maven.apache.org</url>
     
      <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      </properties>
     
     
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.8.2</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
        <reporting>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven−pmd−plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <linkXref>true</linkXref>
                        <sourceEncoding>utf−8</sourceEncoding>
                        <minimumTokens>100</minimumTokens>
                        <targetJdk>1.5</targetJdk>
                        <rulesets>
                           <ruleset>/rulesets/sunsecure.xml</ruleset>
                            <ruleset>/rulesets/naming.xml</ruleset>
                        </rulesets>
                    </configuration>
                </plugin>
            </plugins>
        </reporting>
     
     
         <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3.2</version>
                    <configuration>
                        <verbose>true</verbose>
                        <source>1.6</source>
                        <target>1.6</target>
                        <showWarnings>true</showWarnings>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-pmd-plugin</artifactId>
                    <version>3.0.1</version>
                    <configuration>
                        <linkXRef>true</linkXRef>
                        <rulesets>
                            <rulset>rulesets/java/sunsecure.xml</rulset>
                            <rulset>rulesets/java/naming.xml</rulset>
                            <rulset>rulesets/java/braces.xml</rulset>
                            <rulset>rulesets/java/coupling.xml</rulset>
                        </rulesets>
                    </configuration>
     
                </plugin>
                <plugin> 
                    <groupId>org.apache.maven.plugins</groupId> 
                    <artifactId>maven-checkstyle-plugin</artifactId> 
                    <version>2.3.2</version>
                    <configuration> 
                        <configLocation>config/maven_checks.xml</configLocation> 
                    </configuration> 
                </plugin>
            </plugins>
        </build>
     
    </project>


    Cordialement

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 483
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Tu peux commencer par retirer le plugin checkstyle et pmd de ton pom, ainsi que le reporting pmd. Après quand tu aura une config qui te conviens, tu pourra éventuellement les faire revenir et les configurer comme tu le souhaite. Mais ce n'est pas indispensable au fonctionnement de maven.

Discussions similaires

  1. erreur Eaccess violation dans module ntdll.dll
    Par cilies38 dans le forum Langage
    Réponses: 1
    Dernier message: 05/05/2006, 21h12
  2. [DAO VBA] Récupérer une erreur de violation de clé
    Par Caroline1 dans le forum Access
    Réponses: 5
    Dernier message: 28/04/2006, 18h39
  3. [HSQLDB]erreur de violation
    Par chti_juanito dans le forum Autres SGBD
    Réponses: 1
    Dernier message: 17/04/2006, 22h15
  4. [D7] Erreur de violation d'accès
    Par plante20100 dans le forum Langage
    Réponses: 10
    Dernier message: 26/08/2005, 12h05
  5. Récupere erreur de Violation de kley unique
    Par neness dans le forum Bases de données
    Réponses: 7
    Dernier message: 26/02/2004, 20h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo