Por que meus arquivos jython “* $ py.class” não estão sendo atualizado com mudanças de código depois de movê-los para um pacote diferente?

Originalmente, eu tinha todos os meus módulos em um pacote. Recentemente, criei um subpacote no pacote original e movi alguns módulos para ele. Minha pasta src e as 2 pastas de pacotes estão todas em meu PYTHONPATH.

Desde que realoquei esses módulos, as alterações que estou fazendo em seus arquivos .py não parecem estar entrando no * $ gerado Arquivos py.class, que acredito serem os que são executados, com base no que print __FILE __ expõe.

Os arquivos .class estão localizados no diretório do pacote de nível superior, o que acredito ser porque o primeiro lugar de onde eles são importados é dentro de um módulo que está nesse pacote. Portanto, acho que eles estão no lugar certo.

Mover os módulos de volta para o pacote de nível superior faz com que o problema desapareça, mas ser forçado a ter todos os módulos em um pacote dificilmente é uma solução. Há algo que devo fazer para 'registrar' um módulo como parte de um pacote, além de tê-lo em uma pasta com um __ init __. Py ?

Nota: O resto desta questão é apenas os sintomas que me fizeram concluir que os arquivos .class não estão sendo atualizados quando eu mudo os arquivos .py. Você provavelmente pode pular se for o tipo de pessoa tl; dr: P

Eu coloco um monte de espaços em branco no início de uma função, e quando eu passo por ele, o cursor segue onde o código costumava estar .

Aqui está o código que o IDE me mostra:

enter image description here

e aqui estão os vars locais (observe que self não tem limite):

enter image description here

Depois de avançar algumas linhas, aqui está o código (observe a posição do cursor): enter image description here e os locais:

enter image description here

Observe que agora self teve id e updatePeriod vinculado, então essas 2 primeiras linhas de código após o espaço em branco foram claramente executadas .

Se eu remover o arquivo .py completamente (colá-lo na área de trabalho ou algo assim), obviamente o IDE não pode encontrá-lo, então não posso percorrê-lo, mas o programa é executado com base no código usado para ser (há algumas mudanças óbvias que posso dizer que não estão em vigor).

Finalmente, as datas de modificação nos arquivos * $ py.class relevantes têm cerca de 4,5 horas, apesar de toda essa confusão que venho fazendo com o recente.arquivos py na última hora ou 2.

9
задан Cam Jackson 29 August 2011 в 23:17
поделиться