设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13144|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . w7 [0 [2 b# g
: a1 f7 k* q* g; y6 O( X% B% R7 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 b: D) d+ p1 T% a$ c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' f: `/ l  _' B0 Iswarm.SignatureNotFoundException
/ a$ y' W6 j6 K        at swarm.Selector.<init>(Selector.java:76)
, y, d, C% L' M! j2 o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) R6 v$ |% s9 @0 J4 E. W7 o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 C# n/ z" V! e8 ~
, x1 `5 B( n3 i) f2 `3 h8 p+ y/ C* p: w- m% [& `: n
import swarm.objectbase.SwarmImpl;% }! |; y; ~2 E7 J0 G: c, y
import swarm.objectbase.Swarm;" @8 _! T8 |5 J) ~8 m0 i
import swarm.activity.ScheduleImpl;
( G, Y: \8 U3 G5 t4 X  Ximport swarm.activity.Activity;
. z% X4 J0 S: kimport swarm.activity.ActionGroupImpl;
' c$ a1 ^  k! ^4 uimport swarm.collections.ListImpl;+ G  P4 |2 v9 X7 S! k' F+ q0 ~1 k
import swarm.defobj.Zone; 5 f) X% i# v# ^. l+ P0 C
import swarm.Globals;
5 u% n4 G2 B- h1 P- fimport swarm.Selector;
, M6 E) _  x2 ~& @  H, h! simport swarm.activity.ActionGroup;
9 p' }' F2 L# n; yclass Agent {
' g* k0 ]) m; L0 |! E2 O: S9 g        char id;
' T1 _/ I4 F: C) _' E5 \. K& W
* k/ F3 [0 r, Y" P0 p        Agent(char id) {5 _$ n* {5 z7 a3 r8 J" @
                this.id = id;
: `5 A: D/ q* X2 y1 M        }! @- S, t( K7 L, n$ p, w
  L; {& ~" y4 m- X% U+ m; L# ?0 p9 V, y8 p
        public void agentStep() {1 J; o+ g. K7 j) ^" h& d3 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 ?1 f, [4 }# I5 y        }" j) \1 @( h. {9 @
}0 q( v$ R; l+ l$ o4 c  C* w: `
) V4 U/ ?; b, F8 D
public class ActionGroupDemo extends SwarmImpl {
7 H1 h" Y  Z% V% Z6 c, p        ScheduleImpl schedule;
4 |7 f% a! O8 j        ActionGroupImpl actionGroup;
/ F+ ]. x# O" A8 {" G        ListImpl list;1 p/ b1 \+ v9 D: c+ L* p8 ?
        char Id = 'a';
# v4 g* F/ r( y3 F' X
) [2 J8 v$ u7 V. B" r# ?' m        ActionGroupDemo(Zone aZone) {4 F: }/ d* g0 X
                super(aZone);! t  I! e! t- h$ a
                list = new ListImpl(aZone);
7 x0 c) j! g* m) e$ O! s/ o                swarmSetp();% D5 D# B+ o# e, l8 P) l! d
                actionGroup = new ActionGroupImpl(aZone);0 v  g" E, Z5 e$ h  Z
                schedule = new ScheduleImpl(aZone);4 C" P0 o; ~+ o8 d
                try {- S0 d# J$ \3 |6 y4 z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ u1 L# Z$ V9 B6 ~2 E# _# q1 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; M; ~& i1 g2 S0 D8 A7 X                        
# s/ e* m& ~, m9 l0 ?                        actionGroup.createActionForEach$message(list, agentSel);
9 n- O; x% c5 m8 L- n8 k                        actionGroup.createActionTo$message(this, swarmSel);1 f( s( z6 q+ c8 r# _! M+ E
                        schedule.at$createAction(0, actionGroup);; T' W' i* ^' V. d- V
                        schedule.at$createAction(1, actionGroup);- a' r' g# {( w8 C  K& l: N( I& G4 ?
                        schedule.at$createAction(2, actionGroup);, k* h0 Q$ ~* w0 {8 I
8 d( J) l6 d" W5 N( W4 d' o
                } catch (Exception e) {! R5 W% ]- t* Z2 b- C# f8 H
                        e.printStackTrace(System.err);( v  e9 I; h7 I3 Y+ [. e
                        //System.out.println(e);, C0 ?: C* P8 j7 O3 b. i
                        System.exit(1);
9 A* c/ w0 {, `0 S& y/ ~                }
. L( L" R5 h" _+ M, p
* e1 M  Z; I8 B) C9 Z' S2 ?6 h1 Z8 N: T9 n
        }5 Y' a! b* e; {+ `) b8 b. F1 z
+ k2 a2 h$ C' J. N* z8 G8 p8 d
        private void swarmSetp() {
' |/ e% d; m' b2 M0 T! v. t6 D7 n                list.addLast(new Agent(Id));6 O1 K& Z8 n9 u2 p( X
                Id++;
) _- r& g9 t! m        }, E& e! o1 ~4 ^0 l$ K* D: S6 A# I5 f/ V
2 ]+ H# }; v+ f; L# g
        public Activity activateIn(Swarm context) {
7 b* _2 ~6 {# P, o. {+ v                super.activateIn(context);" [+ r* [1 m+ Q: @% ]
                schedule.activateIn(this);
1 J2 ~9 `+ F8 x2 P/ j% h* f4 h                return getActivity();
5 Z$ N9 w7 j2 ?. z6 ^        }
/ y& `/ {! L( Q
8 h1 ]  {. p, L" m0 c        public static void main(String[] args) {
4 {; t, j- U6 v* S' ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 `% j  z. X; C4 R9 B+ q; @" L  q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- U8 R' W% |. n: I  c) ^. i                swarms.buildObjects();( c& i7 M$ Q1 }! _- o  Y% M
                swarms.buildActions();
. U9 T3 g0 ?% ~+ `/ L                swarms.activateIn(null).run();1 o1 V" r/ V1 o; R2 x
        }$ o5 j1 o3 a8 E2 }# D6 @+ C2 `' W

) y9 A. {' d- _+ d* c# p( S  g, Q7 |5 P}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-29 13:38 , Processed in 0.013729 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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