diff --git a/macros/src/trans.rs b/macros/src/trans.rs
index 94e7805e5ac6cc6b539b2353fd711c2b5f64322e..39c9c6f5c2708e81032bf0a150a61e050d70ad63 100644
--- a/macros/src/trans.rs
+++ b/macros/src/trans.rs
@@ -514,12 +514,12 @@ fn tasks(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
                         needs_threshold = true;
 
                         fields.push(quote! {
-                            pub #name: super::_resource::#name,
+                            pub #name: ::_resource::#name,
                         });
 
                         exprs.push(quote! {
                             #name: {
-                                super::_resource::#name::new()
+                                ::_resource::#name::new()
                             },
                         });
                     }
@@ -592,8 +592,8 @@ fn tasks(app: &App, ownerships: &Ownerships, root: &mut Vec<Tokens>) {
 
             let priority = task.priority;
             if needs_threshold {
-                tys.push(quote!(&mut Threshold));
-                exprs.push(quote!(&mut Threshold::new(#priority)));
+                tys.push(quote!(&mut #krate::Threshold));
+                exprs.push(quote!(&mut #krate::Threshold::new(#priority)));
             }
 
             if has_resources {