设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9066|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 f4 h$ m) g. N- E7 c
+ A( x# _& c2 U0 G9 K3 I% [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 l$ R0 o/ o$ ~: o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ T4 q$ R- i, ?- `8 nswarm.SignatureNotFoundException( s) Z! P: j- L) [  L" [2 [" v
        at swarm.Selector.<init>(Selector.java:76)& y: U5 a9 |5 D7 ^; j0 A; O# \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# H1 k2 x1 _$ g# F* [        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 @& |8 [0 @! e* S1 J( E; Z) i. ]0 l$ B) N  V) A( B8 ^

. S* I/ h+ m/ g. F' G- ~$ ^2 Zimport swarm.objectbase.SwarmImpl;: E+ I7 c# L  i8 ?' M7 b9 \
import swarm.objectbase.Swarm;
' `3 Y( b% x3 L+ K, a4 p) nimport swarm.activity.ScheduleImpl;
# t" P  y5 c2 R( O9 u9 Cimport swarm.activity.Activity;4 {9 o! z' U8 O( y4 b: B5 i
import swarm.activity.ActionGroupImpl;4 g6 d- W! ?1 {# N
import swarm.collections.ListImpl;
. Z7 H, v- O3 D* ?import swarm.defobj.Zone;
9 T' Z5 S- f1 M9 Y' `import swarm.Globals;
) ^2 I5 T, o. ^$ J0 e) u) f% K# gimport swarm.Selector;
$ T/ ^+ h. _; c& qimport swarm.activity.ActionGroup; 8 d5 r- R+ Z9 H
class Agent {+ r0 h1 w" t! i. G6 V0 E( [" Z( u) b4 |
        char id;9 x) M) q; t4 @$ [: Q4 x

7 J, x, P* d" t! r* H) A* S        Agent(char id) {+ |1 |# l+ L0 O+ x7 v
                this.id = id;
, G! w1 p' ^" n3 N1 R        }5 o6 ]8 `: H: a5 T! w

( r$ ^6 v; q( G3 t- m! M        public void agentStep() {
4 |. ~2 d- U& R- Y- B# S% r) f3 ?) e                System.out.println(id + ":" + Globals.env.getCurrentTime());& d; b4 |0 q6 A" V. K& t2 k
        }; ?1 `/ {5 a, Q* F) I" y8 h& L
}
3 h; U4 I1 b" n/ _! l
" w: c7 T; z9 T* I9 s. ]public class ActionGroupDemo extends SwarmImpl {
9 L+ I8 Y7 K# c        ScheduleImpl schedule;
' V  ^/ h3 a. m3 K        ActionGroupImpl actionGroup;
' m) P1 [+ N) n  B6 H: n0 e        ListImpl list;
& O3 I9 G1 d9 l$ d* u) e/ U        char Id = 'a';( w  t5 i8 r8 u" N! e  ~

2 o0 k2 t. D& ^9 x1 Y        ActionGroupDemo(Zone aZone) {
; ^' v6 ]7 Y. a                super(aZone);
: J* o, O. ~1 Z                list = new ListImpl(aZone);: D6 u$ D& c( M: W8 g7 Q  N) S7 t
                swarmSetp();. }2 W* u4 k: V/ I
                actionGroup = new ActionGroupImpl(aZone);+ d5 j% b! p( O+ ]( w( ], g. s& i6 I
                schedule = new ScheduleImpl(aZone);
& U! Y1 K: y% T# f8 z8 R* b& ~; W                try {2 l3 P" U" ~% P6 H( D2 w7 L  y- i+ L  w, A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& E' ?* s- R2 ]8 Z: p8 k/ I6 N6 Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) }, Z( V! Z$ c: g: n. t( T3 P: l
                        : h) r$ u0 I3 \! Y+ B9 o! {2 s6 Y
                        actionGroup.createActionForEach$message(list, agentSel);
! Y3 @% t' K7 C: o4 E2 o6 H                        actionGroup.createActionTo$message(this, swarmSel);' v! {. T1 ]. L8 \! w- w$ [- u
                        schedule.at$createAction(0, actionGroup);
( |4 u5 n- O& d                        schedule.at$createAction(1, actionGroup);
! D" x7 P  o! L! w) Y                        schedule.at$createAction(2, actionGroup);
9 ], Y* z( w4 h& K1 j6 k& Z1 B" `& ~" r6 y  t% P6 {5 n
                } catch (Exception e) {3 U" V' W' `: X$ Y! X+ P6 m
                        e.printStackTrace(System.err);
! X9 J4 m/ n& P% q                        //System.out.println(e);0 W" D  Q, O% o
                        System.exit(1);
+ K  C' b$ V* r                }
+ L- `2 L. g* m) e2 R
! k  Q) a5 i# u, ~
( a& S( C4 w* T0 O7 ^        }
7 v2 r1 n; n; G3 }) s* a4 z, s* z0 i' e
        private void swarmSetp() {+ o6 o0 H# i4 J6 G/ x
                list.addLast(new Agent(Id));
, z0 |+ |2 M# y                Id++;
- b, D# ?8 `* r' ^" a        }
6 L0 d6 h) j2 r4 ^- W$ a4 A
0 t: q" z1 `- ]. A- U        public Activity activateIn(Swarm context) {; O1 L! L' O# k+ o" q( z
                super.activateIn(context);
8 m% o( w" o6 I  Z# j9 x( q* h                schedule.activateIn(this);
* `* H+ a% x0 d; w                return getActivity();
; j! R0 S* n  H/ z' P$ ~. j        }. Z8 q; }5 v- J( k6 ~

- ?+ `2 ^* \6 F# G5 k# ^        public static void main(String[] args) {
# a8 I! @) ~& \0 J) ^% L% m3 D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" g8 w6 T: s1 T$ d  F4 |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 m* a# ~* }1 ]* T( _
                swarms.buildObjects();
# @" x; t( P" D8 c                swarms.buildActions();
! M5 t% i5 Z3 q                swarms.activateIn(null).run();
3 V, D( ?6 n" g0 R8 |        }
; Q: F3 a+ Q) }1 m6 }4 c
4 w: ^0 o, ^6 g0 y) g, t4 k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-4-30 11:39 , Processed in 0.019825 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表