设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12593|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* Q$ q2 z& r9 A% ^9 M; u: M' D4 U) @2 x+ d* @9 L6 t: L3 j2 a. E$ |; K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ [6 u1 R' M& ]1 `以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ E4 S9 k& y2 F5 x& @swarm.SignatureNotFoundException
1 |. A* B" }: D( C/ Y        at swarm.Selector.<init>(Selector.java:76)
# r! A( }  D4 q( D) D' b1 A        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; n# B/ a5 w/ v        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 {3 O7 `* Q5 [- A& C7 S+ `
, e. S  s) v) Y& F) }4 B/ `4 H3 `5 Y
import swarm.objectbase.SwarmImpl;
$ f0 O+ u& c) Z+ Z2 K) }import swarm.objectbase.Swarm;
& A6 m& y9 Y" ?import swarm.activity.ScheduleImpl;
. _- B5 D7 o) f% }; b# ^0 F" H4 Limport swarm.activity.Activity;% |+ \  I- C5 A4 h# o0 F' H! o
import swarm.activity.ActionGroupImpl;
% k; P& I. r2 P+ T# Iimport swarm.collections.ListImpl;
9 T. _: l( L3 h/ Fimport swarm.defobj.Zone;
, F' a1 o, ^- g' \4 d' rimport swarm.Globals;
( k! w8 t( ^  C( g0 l9 ~. f' J7 himport swarm.Selector;3 R" R7 _+ |  j" E
import swarm.activity.ActionGroup;
5 i2 G  |7 P6 N  X; Pclass Agent {/ _4 @, z. S) E$ e6 R* Y1 Q2 Z8 w
        char id;
* l4 O5 u/ }2 z! Y6 K5 I9 U1 r/ @/ F  z; j
        Agent(char id) {  T& r5 k6 f6 Q: \' H+ g. u
                this.id = id;( Z1 z) T% L: r% q
        }
( v& I; V* T& g; R/ i/ F8 r* W8 F! o/ l4 w7 z
        public void agentStep() {! {* R5 t" s" E, }& U8 A
                System.out.println(id + ":" + Globals.env.getCurrentTime());# D( d! @9 v# i0 ]
        }; T* h2 B; i1 C
}
/ U. e& p( I) @, K0 H) C' `8 b( ]) P
public class ActionGroupDemo extends SwarmImpl {1 E9 ~0 W( z: g; w% P' A
        ScheduleImpl schedule;( t; z7 S4 _* @
        ActionGroupImpl actionGroup;
" M8 a; T' V3 D# [0 @* @& p) U        ListImpl list;
& X- X, A1 f' l4 s6 |        char Id = 'a';* M7 D2 x/ m3 q3 ^

) `2 Y1 Z) z( b! b        ActionGroupDemo(Zone aZone) {8 y; p0 D9 [7 H( B
                super(aZone);
; d: c/ D! R- M+ @* y- g                list = new ListImpl(aZone);  n4 H0 D) C& T7 O; \% b! I# i
                swarmSetp();. Z. }' {% x% L4 Y' `9 D
                actionGroup = new ActionGroupImpl(aZone);4 i: D+ |  t, A' s8 Z! m: [5 |# U
                schedule = new ScheduleImpl(aZone);
$ J( ?% f. M& |( d! r! c- ~                try {
1 `3 S. l5 R$ S1 X, I% i/ q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 n# p& u: Y' R! A8 i
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 z) N# ^9 u1 b/ S# r7 N% `+ q
                        
$ o" H5 ]( [4 q$ x# w                        actionGroup.createActionForEach$message(list, agentSel);
7 x8 q2 P5 ?) o# N. s9 k- G                        actionGroup.createActionTo$message(this, swarmSel);
9 S% F6 a  R; M# @: x- r! |8 ?6 E, }                        schedule.at$createAction(0, actionGroup);
+ Y2 x8 Z- d7 ^- i, ~3 d                        schedule.at$createAction(1, actionGroup);' q. V% c! }' B1 j
                        schedule.at$createAction(2, actionGroup);& N) H# f! ]  A3 ?
8 Y8 ?6 m; ~! u
                } catch (Exception e) {
. W1 |2 q! d5 U4 p4 `. ^* _' y                        e.printStackTrace(System.err);
# d) P0 z1 e+ ]/ r' s                        //System.out.println(e);
. s8 _/ `" W: c                        System.exit(1);$ K: d2 g4 d" Y" r
                }
  F- t) m3 V9 d5 W
/ {; B- O  |& W. }' N; Q* u; K! z4 o$ ~# S/ ?; ?  c6 _- u3 u" ]
        }/ p9 L: {$ [2 Z8 @( Y

: G5 w0 Q  g4 M        private void swarmSetp() {
' u$ Q/ [0 |; {% J                list.addLast(new Agent(Id));
/ p0 m2 \) H5 Y' ]! I5 f, P                Id++;; A3 ], q6 F8 U6 ?  z
        }7 U$ H  b4 M" f# a

+ Z8 X% Z, M- v, Z( N8 l        public Activity activateIn(Swarm context) {. M" {% T( d0 z
                super.activateIn(context);
0 S7 f; a; H1 a2 E" d* K1 p/ ~" k                schedule.activateIn(this);
; v5 o! s5 }! @4 x                return getActivity();( L2 J. H  I- ~- v6 Y& N& ]
        }4 W" m6 y0 R8 d
$ H6 |" H/ D: m) Y$ R
        public static void main(String[] args) {
3 Q1 F  j0 D& @) j& o% q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ l7 j# Z( Y4 [; ^! u/ g& E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 e( U7 q+ w' `6 Y+ Z* m
                swarms.buildObjects();4 Q+ M3 G- b* a
                swarms.buildActions();
0 V' M, j  g- X1 ~0 n" _                swarms.activateIn(null).run();+ |' c% w6 @1 d" O4 l( }9 U6 N
        }: l/ ^1 x4 w: Q7 ^( L
/ l8 ~+ J; l, w" D4 v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-13 06:49 , Processed in 0.013906 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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