设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5786|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 % A/ w: W! t" G' Z
# X2 E' f: Y1 C' Q/ M" N( s9 L! v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 f8 _; L: o, U& w* `; O9 y8 Y! e: V6 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ q" E: y) c' C1 {
swarm.SignatureNotFoundException- T2 I/ j3 K9 T! u
        at swarm.Selector.<init>(Selector.java:76)
: u, U, u4 }) {1 i, y- M- S1 Y  D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 N' |9 N' ?' l. \        at ActionGroupDemo.main(ActionGroupDemo.java:67); _% M" v, p. t' W* n
) R' u; T1 ~! V' H- x6 s$ W6 A
/ k1 g9 ~+ N. _3 B
import swarm.objectbase.SwarmImpl;( |6 u9 w) ?7 z" `1 c
import swarm.objectbase.Swarm;
3 w% I( f. g/ f2 uimport swarm.activity.ScheduleImpl;
8 p5 q3 R9 E, n+ f6 g' m) E1 Y: |import swarm.activity.Activity;
, |) s/ W% {* |6 K$ \& Oimport swarm.activity.ActionGroupImpl;
: [' }+ y* T0 I& f( Y6 Himport swarm.collections.ListImpl;
+ j/ b9 W& ?" a) a7 ?1 ?2 Bimport swarm.defobj.Zone;
- B% q' _% A7 _3 {- e$ Himport swarm.Globals;
+ ^2 a/ }$ |- j+ o& L* S9 ximport swarm.Selector;7 k* Y) K% |, A# x3 A9 V
import swarm.activity.ActionGroup; 3 l5 q: M# C$ f8 x0 ]3 L7 w
class Agent {# Y2 Y( ?3 g& Y8 B
        char id;
; j1 i" |: f) Q; S
6 H$ I( L% L# x/ ~        Agent(char id) {
% L- R1 d- U2 m' p                this.id = id;
# z  d) x+ i1 y: A2 _/ l        }
9 S5 H$ L0 x! r- g/ W* ?7 n
7 z- g& g, m8 k; _7 G        public void agentStep() {
) J# f: Q3 H2 ?8 _- Z" L7 T                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ d% p0 E8 K8 |8 E7 ^5 I        }
4 W: ]& `( d9 Z7 I9 }6 e7 }}" y* M* Q( m  W$ I

$ p" F$ y  F1 V( ]6 H/ ]$ ]public class ActionGroupDemo extends SwarmImpl {5 y" r$ T0 J( W- U* A, ^5 ]
        ScheduleImpl schedule;
- G+ I  Y" p6 {+ E2 j9 R+ {1 a        ActionGroupImpl actionGroup;: r& p) ~" \; h$ c; x  U- s) h2 E4 S
        ListImpl list;5 d% m6 l7 Q# Q5 m% W& M8 W
        char Id = 'a';
: `+ V: t+ i7 ]+ T% Y3 E$ g# N+ z- c1 d
        ActionGroupDemo(Zone aZone) {
) m5 I  O/ U5 Q, \  J                super(aZone);* D! b7 B$ N; p+ f- A
                list = new ListImpl(aZone);
2 d9 C& p, u4 Q' `7 d                swarmSetp();
& v+ O. a  [4 q9 H4 e2 Q: q                actionGroup = new ActionGroupImpl(aZone);
2 a; m& a$ Y) S# I                schedule = new ScheduleImpl(aZone);
. V! j& i/ x# i" E; T- y7 x                try {; t, X  y& Y8 d) O1 i. h. D
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ i4 X( E# K0 B: x% ?/ j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" j; M5 M( n6 D& w$ L: ~
                        
" u5 X- [/ F+ q4 W                        actionGroup.createActionForEach$message(list, agentSel);8 h4 l0 L4 B: q/ C4 Z
                        actionGroup.createActionTo$message(this, swarmSel);+ M9 c2 c3 Y2 k) A
                        schedule.at$createAction(0, actionGroup);
' M; \- U% {2 [/ n3 n                        schedule.at$createAction(1, actionGroup);
) R6 N7 v  n+ _- f                        schedule.at$createAction(2, actionGroup);& M+ T  A( _7 `) ^% ?

; j3 B* W( Z# U$ P& r# O! y                } catch (Exception e) {( W& k; K* K+ `* G, i% P5 ~+ M
                        e.printStackTrace(System.err);
3 e0 w6 @/ y- F0 v                        //System.out.println(e);) ~+ G5 U; j2 U6 d# ~% E
                        System.exit(1);4 D# A$ N/ s2 h3 k0 |
                }
8 G8 a9 C( Z: Y" h/ e$ F* I+ t' G

! V1 d: B$ |; ^& t9 S        }& u6 S& e8 i( @5 y/ |

# [- K7 p7 c' {' V! R/ z. L        private void swarmSetp() {
1 i0 `, ]3 l6 ]& q9 @                list.addLast(new Agent(Id));; ^  {8 S$ D: j, }
                Id++;
$ l9 I& g' ^  h8 r: `        }5 B- H5 g$ N7 N; w$ ]

6 X/ X9 j+ O- b4 T* f- f) b        public Activity activateIn(Swarm context) {
) `' E; P# i1 Q! W% P. J                super.activateIn(context);, c; u7 V. h" `9 [/ b) U
                schedule.activateIn(this);! I' J3 n/ T  {' D- ^
                return getActivity();
, w5 ^, E' s; W# @2 N$ o! W% M        }
/ V6 s8 o- `$ @* e9 ^* c  ?
1 a$ \  ^4 y! k$ z        public static void main(String[] args) {
0 i. @3 o# Z! ~! F" ~9 p0 B) q7 _                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 {* w+ P$ ?7 M" a- k. p
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 n4 k& l3 u- H
                swarms.buildObjects();
! i' k% Z8 O- W% g6 Q/ A                swarms.buildActions();
8 h2 e: G5 K0 w                swarms.activateIn(null).run();- D$ S6 Z3 Y+ Y6 R0 N9 E
        }- e: n1 |( I8 l: }, e/ Q
8 P" m/ ~& Z8 C0 H
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-26 14:43 , Processed in 0.014257 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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