设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6350|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 X2 h# f1 U% V( C2 U+ c
" y9 U1 ^& r5 X/ L, Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 \3 {2 q, @1 G4 y& J$ c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 e) p! A* w$ L! p. R0 W) m. u
swarm.SignatureNotFoundException! u7 J8 |7 i; |! b0 |
        at swarm.Selector.<init>(Selector.java:76)7 ^# k8 ~) i& L) |
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- [# n5 |  M1 W, J3 ?9 u6 i' h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 n: N- A; o" m, ]* I: @4 q5 x4 T. \4 \+ E6 D( V7 u
1 b' A- s4 @4 m+ R* l  e
import swarm.objectbase.SwarmImpl;3 p- ?) m( c; Y9 L* D
import swarm.objectbase.Swarm;
* g" K4 o+ J, x. z( j- T) q3 u. Eimport swarm.activity.ScheduleImpl;7 J7 N, V3 U2 k
import swarm.activity.Activity;- p( A8 M; H' ?
import swarm.activity.ActionGroupImpl;* A: j: p/ e4 V2 C) L0 y* d$ ^
import swarm.collections.ListImpl;! }. _  z* d: p1 o) a' _* j4 r, I/ C  \2 t
import swarm.defobj.Zone;
/ O. @& I$ J* m" ?* y& ?0 Kimport swarm.Globals;
" ^9 G, q. ~# T* }, K2 X( ^import swarm.Selector;9 S! ?& ]7 S6 F* ?8 \0 \0 G5 M6 z$ ]
import swarm.activity.ActionGroup; * M; w3 H9 R: b- g0 F) Q+ s7 M. W
class Agent {0 V) {3 o+ Z0 P0 D
        char id;
! I$ n5 G4 m8 G" u
$ w* H% a3 P1 [        Agent(char id) {
# f8 K4 C) g$ H  W) C                this.id = id;! x7 x' L+ q7 p1 A3 P/ j
        }: Q5 E5 d5 x7 B. K1 T- X
: I- b# l5 w5 W: j3 S* q" b- R
        public void agentStep() {  D! S; B. X* x$ D
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 s, U+ |0 O6 L, E# R2 [* g# I  I
        }
6 f" h$ p+ g. W) w}
8 i0 ^5 B9 M; p6 Q
& D/ Z% @- f1 c% lpublic class ActionGroupDemo extends SwarmImpl {' @$ {% X( Z9 I" ~
        ScheduleImpl schedule;7 R% y) D) i% t% z5 L. F
        ActionGroupImpl actionGroup;9 \7 P1 Y: o7 R$ B
        ListImpl list;
% _1 m' n4 o( M3 P4 v5 N9 D- ~  b        char Id = 'a';
  s( x- I# M& y# Q
: K. f3 I+ y8 s. e& P        ActionGroupDemo(Zone aZone) {3 N; B; J) A$ G' o" S, n$ b" l
                super(aZone);1 I- @/ A/ o  \# C
                list = new ListImpl(aZone);
7 b7 `0 i! M  Z- `! I' _                swarmSetp();
" p8 Q) e" y0 e! B0 H                actionGroup = new ActionGroupImpl(aZone);7 u  |! z! Q% ^, |- V& g* g
                schedule = new ScheduleImpl(aZone);
" E) k' \; S1 j" @$ {                try {1 W. x- V1 U1 U
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- A/ v$ x1 i" m; ?8 g; p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  e( n" X3 L: G9 P1 @* q  K                        
  b  W' n' V. Q: B, i4 n5 `3 ?                        actionGroup.createActionForEach$message(list, agentSel);
/ o' o  F1 O! b' P! s& ^; T- R. U                        actionGroup.createActionTo$message(this, swarmSel);5 x, y8 E" q( N! @! W
                        schedule.at$createAction(0, actionGroup);
; y+ `7 @! J. G+ C6 B+ J                        schedule.at$createAction(1, actionGroup);
* U. o7 Z- E# f# u8 Y0 {) d                        schedule.at$createAction(2, actionGroup);9 K& w. y7 Z6 R# d1 ]4 w

( [9 x# I$ e; ?9 d+ p* n                } catch (Exception e) {
3 y3 G3 y) Q* {0 u" Q2 k- _8 k                        e.printStackTrace(System.err);8 \$ r7 n2 E& k3 N) b# F6 g2 v4 y
                        //System.out.println(e);( i) b( P8 J) u, g$ F* ^8 h
                        System.exit(1);
6 _2 e* A' f$ U. P4 n' ^                }
/ d. [# ~3 D* f" L' x" k# K" n/ [4 Q, C9 k3 d
$ p7 w6 R& l! j
        }
; p$ V: ]2 I- |: a2 N
$ i! i, I' g- B        private void swarmSetp() {
& E: Z, }/ N+ W/ l2 @2 ]                list.addLast(new Agent(Id));
, v- N) Z; e, T5 C                Id++;3 w2 q  T, Z* i2 r9 V1 X
        }4 {) x' y) R2 S

' t5 W; ^' q- l9 k  t! M        public Activity activateIn(Swarm context) {* o+ N- k# u2 O  X! D: v/ F
                super.activateIn(context);. c6 H; X) w4 `7 ^! E9 m5 L
                schedule.activateIn(this);
7 n5 K# g8 S+ ^5 Y                return getActivity();# u/ X9 m$ R8 p% Z3 H# c
        }
/ g' r3 e+ A9 r) g- t6 z
7 X& p; D- @% u$ X2 K5 g        public static void main(String[] args) {1 q9 Y; c% g/ j
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( |6 n0 g. K' j0 y2 r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 J& M; y% c4 b& N6 D+ x& P
                swarms.buildObjects();8 L% P5 P# ~' @5 v% w$ Y
                swarms.buildActions();
1 I, H: O" @. [/ i9 ~0 f" g                swarms.activateIn(null).run();
! l( d3 o; K$ g. o: v8 O        }/ H. W# u6 i  y* d$ r' e

: v- _% Z/ A4 f" D- U}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-26 04:43 , Processed in 0.015284 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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