Error Using Snappy With Jupyter Notebook

Hi, I’ve just recently started using snappy. I’m currently running snappy with Python 3.6 with Anaconda (which I pushed to Jupyter Notebook using python -m ipykernel install --user --name=py36), following this tutorial:

The code I’m trying to run is this very simple piece of code below:

import sys

import numpy as np
from snappy import ProductIO
testfile= '../../data/Edited_Copernicus/S2B_MSIL2A_20210906T112109_N0301_R037_T30UUU_20210906T125847_ndvi.dim'

This code runs just as expected in Anaconda Prompt but for some strange reason, when I try to run it in Jupyter Notebook I get an error relating to jpy. I’ve searched the forum and I’ve noticed a few people have had issues using jpy in general but for some odd reason snappy works just as expected in Anaconda Prompt. I was wondering if anyone has had any similar issues and if there are any known solutions to this problem.

Here is the error in full:

ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-15-d3cd7f96e261> in <module>
      1 import numpy as np
----> 2 from snappy import ProductIO
      3 testfile= '../../data/Edited_Copernicus/S2B_MSIL2A_20210906T112109_N0301_R037_T30UUU_20210906T125847_ndvi.dim'
      4 product=ProductIO.readProduct(testfile)
      5 width=product.getSceneRasterWidth()

~\.snap\snap-python\snappy\ in <module>
     64 jpyutil.preload_jvm_dll()
---> 65 import jpy
     67 if debug:

ModuleNotFoundError: No module named 'jpy'

You appear to have lost the line:


It appears that the issue is that for some strange reason when I set a new environment to be a Jupyter Notebook kernel it doesn’t correctly set. The kernel will appear to have the correct name on Jupyter Notebook but doesn’t run the correct version of Python. Apologies for the misunderstanding and to anyone who has investigated this issue.

In the scenario anyone may be having the same issue as me. Just make sure that you have the environment activated that you’re interested in, before pushing it to a Jupyter Notebook kernel by entering the following command into Anaconda Prompt: conda activate <environment>