设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11280|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / k. f2 W9 p8 Y2 p; f4 a( J! W) Q
2 G; _4 @7 h/ W0 W( A/ ]" u/ u. F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  K4 ^0 h* i& }. o/ y9 b以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% k0 f+ q& D- q9 l' \; s$ oswarm.SignatureNotFoundException
3 x6 E, [& B" D0 S        at swarm.Selector.<init>(Selector.java:76)+ H/ o0 p2 f" \. N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). B% ?" D0 D7 L( D& o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! O- E* c! b* I) V- H' s& {* k) e- C) ?5 F
* e5 p# C1 t3 ^1 i' R! w! j
import swarm.objectbase.SwarmImpl;! i1 X/ U! U9 Y; M& ^
import swarm.objectbase.Swarm;( w  l' B) ]1 V
import swarm.activity.ScheduleImpl;: s5 |. M3 q1 q! b& N2 v% s
import swarm.activity.Activity;
& `" G& x+ f" ?import swarm.activity.ActionGroupImpl;$ y$ r2 G+ G' z3 R
import swarm.collections.ListImpl;
, O- N& R9 j$ E2 \9 e( N- Limport swarm.defobj.Zone; 7 ~; a1 T* T: e, b1 S/ \9 t
import swarm.Globals;  \4 p& v. C/ x& Q+ G) ]& `
import swarm.Selector;
) p9 ]$ f, T- D2 @import swarm.activity.ActionGroup; 6 ]' O2 `+ G7 f3 N' }; V5 c- @
class Agent {
% _9 o# X1 g! R% t1 e        char id;0 c( L8 X0 g& y* a/ F/ E

. D0 W# J5 U' ?. X        Agent(char id) {: @+ m: G! h9 P& e, O3 S
                this.id = id;
, h3 o" d; \: B# y' t* F4 U/ \        }
3 [5 Q9 W6 t2 Q
0 x6 Q( N7 V: p- x        public void agentStep() {6 i# J4 d& K$ Z* f* V* w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) b7 G$ U& k( _        }
" s& A0 ^3 E. u8 s}, }- J0 _+ H: d0 M- j' E7 s
# T1 [6 ?- ]) Z0 ]
public class ActionGroupDemo extends SwarmImpl {
( t, s6 {- l; u) E3 Y        ScheduleImpl schedule;
, c" Z. @" i# c( a& ]+ L, X6 }# F0 [# A        ActionGroupImpl actionGroup;
6 k9 [5 n6 l0 j        ListImpl list;
% w7 q# a; G& }5 `2 Z" _7 `        char Id = 'a';2 a& @" ?% s0 t' \8 t) j

9 q+ I/ z8 `/ G' i" A        ActionGroupDemo(Zone aZone) {  ?  {/ C, G0 F. c7 F% ]
                super(aZone);! M$ ]* @. R! c5 X# C
                list = new ListImpl(aZone);. W9 s) q( q' q0 L
                swarmSetp();0 ?- x% z1 W/ H4 p
                actionGroup = new ActionGroupImpl(aZone);
2 a% |3 A% Q( R# Q' @, m$ G7 R                schedule = new ScheduleImpl(aZone);: N0 M1 e& O# [
                try {
+ [+ |1 d4 l* L$ y! _( r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ z) S) x5 n0 c+ h* G. n+ o- j, b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 [% C, Z9 \5 P4 Z3 G+ e
                        1 q$ l* n' |- c. B# R" S
                        actionGroup.createActionForEach$message(list, agentSel);
# y9 f, ]0 R) _+ u9 S                        actionGroup.createActionTo$message(this, swarmSel);
# B1 R7 @$ W4 @. y                        schedule.at$createAction(0, actionGroup);
% O' Z. G: s( X4 Y) a" X7 p; T                        schedule.at$createAction(1, actionGroup);( K9 N5 w1 r1 V3 e+ a. _
                        schedule.at$createAction(2, actionGroup);5 A/ U5 U( k0 N! ~9 y

0 E; h2 ?2 [, r9 }' Q4 J                } catch (Exception e) {
$ ~2 v, i  u( {  G& [, q0 G. n+ S                        e.printStackTrace(System.err);# o( D& r+ w2 x) x
                        //System.out.println(e);
# ?: a4 _. Q3 s- ^                        System.exit(1);
. C. M+ G3 f4 M4 A                }
' y$ \; d. _5 y" o; ^' k3 n, P
( T3 @$ L- _" @: o; H8 P! Z$ p  O6 w: I
        }* S- v1 {: e4 ~: A7 o

& a0 W1 m7 |/ M        private void swarmSetp() {
& ]9 _8 B! H3 F2 Q) B: e                list.addLast(new Agent(Id));& u- J9 t$ A4 j
                Id++;1 \7 w! v5 v& O; n* O! t( f
        }
' s" \1 H$ B8 W1 W1 F  f2 R- X
/ w2 D' l, {( A        public Activity activateIn(Swarm context) {
  Q! e: x6 I9 m8 M# f: c1 Z5 r                super.activateIn(context);' g- ~; ]4 ]( g8 `$ i  d
                schedule.activateIn(this);7 \  j& {6 J. }) F$ W: A7 C
                return getActivity();
! a6 s+ N' i. [1 E% |# S        }
; T( y  {1 M  {$ Z& d
6 g! U- h, O2 S( \) B* ]. v8 h        public static void main(String[] args) {
' Z6 z3 c9 C" z% v, e9 R                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 [, f1 m2 ]3 B9 s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 C1 M3 J7 S# W                swarms.buildObjects();% o3 K- E! b# h8 l6 U9 o- c
                swarms.buildActions();
  U( H4 y; M( A; [                swarms.activateIn(null).run();0 j+ O! k5 a! B' t/ g( P7 Z
        }
! ?9 E& Z6 \) x( @: ~& y* S4 G
, X+ F* x! i9 F3 z% Y7 L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-8 04:44 , Processed in 0.017884 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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