设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10326|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) h4 c4 j. e, |! B" G% X0 F
/ ^& k5 k: `- H# K' v* L% b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( k* @5 y: K9 @: e6 B3 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( {( N4 f. j* n, P. H* h
swarm.SignatureNotFoundException
: b7 ^7 U0 f6 N/ z& \5 [9 A7 ]& D        at swarm.Selector.<init>(Selector.java:76)
( \; x# e+ A" ?        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ T* N5 u8 L& g        at ActionGroupDemo.main(ActionGroupDemo.java:67)! d4 _8 ~7 A; i& F, \) ~, p
& I$ e) ^+ u6 f
! L  e2 j$ V2 j6 i5 [& b
import swarm.objectbase.SwarmImpl;2 u6 m9 b. j8 J" G7 j
import swarm.objectbase.Swarm;- U" `- E; z! m# o
import swarm.activity.ScheduleImpl;
* q/ D4 w6 d  n2 j8 aimport swarm.activity.Activity;) C% ?3 ?" X6 }9 o
import swarm.activity.ActionGroupImpl;% p+ [- w. y* {
import swarm.collections.ListImpl;
* R- x) k/ H; p  W) ^: O/ _import swarm.defobj.Zone;
, G/ \: ^3 n7 n; |import swarm.Globals;7 s% H# K4 k$ P5 E
import swarm.Selector;
- n  {% M  y* ]3 X$ Oimport swarm.activity.ActionGroup;
9 J  X% f5 n* i: S& Tclass Agent {/ A# q* n+ `6 N
        char id;8 e3 a9 B& H& x2 \3 x
5 ?, v% ^4 G4 V6 E+ n9 S
        Agent(char id) {
" J2 c/ s. s+ a5 @; N                this.id = id;
4 H- u. t! C4 p  b        }$ y! z6 z# v: X4 ~

9 z( R, s7 {! c        public void agentStep() {$ x# D5 W. @, A# H2 t
                System.out.println(id + ":" + Globals.env.getCurrentTime());' m- b5 B& [: p8 G4 n) C
        }  B" Q/ J: s8 v" E+ w
}, \* x( B; s( ]. w! ^  @0 H9 V

& k' E+ y7 M' @$ v5 Qpublic class ActionGroupDemo extends SwarmImpl {- T- h& S/ d) T/ w' y# L
        ScheduleImpl schedule;1 x. O& F1 r9 I* o1 E0 x' W# c# I
        ActionGroupImpl actionGroup;9 [, u: B* y7 a. J( C  k
        ListImpl list;
) x  R1 o& G6 o1 N0 n  Q- g$ C        char Id = 'a';
$ m/ Y$ a1 H, p5 ]5 C, ~) d9 {) X( W/ J5 n
        ActionGroupDemo(Zone aZone) {+ h* `' @) @* [2 Z' q5 L
                super(aZone);& r, Q4 j& e* B) c( @- k
                list = new ListImpl(aZone);
8 x, c/ S; `  L& ]9 x" K5 h                swarmSetp();. S7 S8 Q" C3 l+ E+ @2 Z5 q
                actionGroup = new ActionGroupImpl(aZone);
5 ?% u; e/ q8 [1 n" x' y                schedule = new ScheduleImpl(aZone);
  P& g/ C# Y" ]. F, Q                try {1 D  B1 B5 ~2 W# k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' o! n$ E  K/ l2 j6 B5 |6 V
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: {- P/ u) o3 o0 {( W
                        
! Z# I+ @/ E$ A! C, v                        actionGroup.createActionForEach$message(list, agentSel);
: L9 Z* v2 _' o. P8 b3 A1 m                        actionGroup.createActionTo$message(this, swarmSel);) e! [  i5 P  e# G8 O% N
                        schedule.at$createAction(0, actionGroup);
0 n$ [5 |0 T5 r# z# F% U- p1 n                        schedule.at$createAction(1, actionGroup);+ ^3 v* ]3 |6 g! E( V7 |  b& ~
                        schedule.at$createAction(2, actionGroup);
) w& T; O2 K" V# @* T! \  m
9 K: I5 J0 e& X" E6 o! r                } catch (Exception e) {
; s( A0 k2 m4 D6 z                        e.printStackTrace(System.err);
- n, N/ l( e, ?5 {                        //System.out.println(e);( j8 {* J! x; d0 L8 Q+ M1 Z
                        System.exit(1);/ P# @* V( V6 V0 G7 W* Q
                }
2 j1 X( S0 P, v0 x7 W5 Y
+ @  g8 }2 u/ P% c( Z: [( l6 l  o  C, K2 q
        }
+ H5 Q$ d9 N( o& P1 ]" R' h# U, I- Z* Y( g
        private void swarmSetp() {
5 A3 h7 o1 l* |3 W2 a7 w1 H                list.addLast(new Agent(Id));' a, F4 h6 n- _' J1 N, `; \
                Id++;# T5 }8 V' Z) A6 y! z+ k
        }( j$ L: `" I+ ]) ?: @8 e
1 Y  @$ D5 ~; K3 n& X: w
        public Activity activateIn(Swarm context) {4 G: L) c% m. C) Y( p
                super.activateIn(context);3 j2 o$ a( }$ @1 v8 _) Q* L
                schedule.activateIn(this);
! i6 R& w4 Q7 {/ s9 x                return getActivity();; L1 T. E" S; l0 @, H" m3 z
        }2 `1 ~7 G8 t( X
% q1 B; S& }9 ^8 m
        public static void main(String[] args) {* J' E, \, T  X$ K( C6 u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 w$ ?% f" j7 R2 i7 I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 Z. @) y; B  _" z( a) k                swarms.buildObjects();6 r( V' _, D6 b% y
                swarms.buildActions();1 Z$ V$ S$ S' X: C# V
                swarms.activateIn(null).run();
( h3 X7 H6 x1 y" K        }
; o1 A* o) _4 C$ K4 L* R, T' q- B) g5 O: s4 Z+ g2 j5 m+ R+ T+ e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-11 03:23 , Processed in 0.014918 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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