设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11784|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , N' |$ f5 L$ s' S# p2 ^, a7 n) U: }
' J! e6 d) T% [! E
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 O& K/ Z6 ^0 x2 I+ E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# E/ d  }# |3 S. T* I: g+ J
swarm.SignatureNotFoundException
3 ~# x0 c6 t" r6 x- n# B3 X3 G        at swarm.Selector.<init>(Selector.java:76)
; H6 A1 x7 k6 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" ?# E, ?! ^" e1 z: o) X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 I$ ]9 a% K* W: l5 Z' O1 `9 G' ^+ l1 S/ e
  V5 ?, F6 U! }6 R3 ]  D' z
import swarm.objectbase.SwarmImpl;
6 h1 v3 z2 w; m8 I" I- Y1 C' ^) Simport swarm.objectbase.Swarm;0 q( T1 i3 e- K* X, |! g1 y
import swarm.activity.ScheduleImpl;
( g7 j1 r0 T; h2 ~& q0 J: Aimport swarm.activity.Activity;3 K- T& {9 V& e7 B+ L( p
import swarm.activity.ActionGroupImpl;
( ?8 H& |, h* y0 B1 L7 s5 \2 Eimport swarm.collections.ListImpl;
. s: P% W- o$ _0 v  t% V! Zimport swarm.defobj.Zone; $ Z+ }8 V% v0 P. U( d, n
import swarm.Globals;
# q3 m4 f4 M- Zimport swarm.Selector;
3 @: p, u: d3 f* l$ T0 himport swarm.activity.ActionGroup; ( M: i& C; @  S2 y$ F6 U' }9 F
class Agent {: _; ~& W" P( m* O8 `
        char id;
, ]. b! k: A, R3 J9 {: r" ]5 N& P9 ^' }3 Q3 _* e5 R) t/ E
        Agent(char id) {
7 A9 d$ }0 V# Y5 D& n% f                this.id = id;
: Q6 a; J- ~4 I  ^, }        }
1 J. \6 W: e# ]
6 B& o5 k; u$ }( K; P4 m        public void agentStep() {
3 [. f0 N# m5 C$ G& \                System.out.println(id + ":" + Globals.env.getCurrentTime());7 L3 a0 d3 U  q( y: F5 \
        }' x7 ^/ ]6 t$ p
}
5 A* B+ T4 c* L# p0 F, m* o& V/ N7 A+ E$ D$ ?
public class ActionGroupDemo extends SwarmImpl {& }  {- v0 s& R7 G5 O
        ScheduleImpl schedule;0 X( S1 J5 r4 X$ _
        ActionGroupImpl actionGroup;
9 h" J* a1 d* O& a        ListImpl list;3 Y6 o$ s- |' N: c8 f' k
        char Id = 'a';. w, n; O9 a3 s: }
% w5 A1 F8 ^8 {0 @: P' G
        ActionGroupDemo(Zone aZone) {! X" {( ?8 Z  f7 v6 {$ e% ^3 ^
                super(aZone);
% C) l- f" A# A9 j. B' M6 ^                list = new ListImpl(aZone);
( i7 A( [& o- }7 v                swarmSetp();) `6 k9 e: j5 t( j, }
                actionGroup = new ActionGroupImpl(aZone);, n' r# ^) r& y- Q1 l* d- d
                schedule = new ScheduleImpl(aZone);
/ x" N2 h) R* ~! T$ a                try {# g* B3 H2 n( @: H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. k: y8 n2 M: M8 _: s: G5 v& _! Z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ ~5 W" Q9 L$ G3 {7 i- |5 s8 {, N7 |. S                        : S/ b% [* _* @/ k* \' ]* P
                        actionGroup.createActionForEach$message(list, agentSel);
4 x3 Q* Y5 q& P( @                        actionGroup.createActionTo$message(this, swarmSel);; n- G2 M" E+ a" F
                        schedule.at$createAction(0, actionGroup);6 L. B$ O" T( b  C8 T  i. `7 c# D
                        schedule.at$createAction(1, actionGroup);5 N7 W$ e6 t$ Q1 [. V3 n( u9 U
                        schedule.at$createAction(2, actionGroup);
% U! O3 W( p! e2 Y
0 i& L( W7 X) e0 y( N" R- U3 j- h                } catch (Exception e) {
4 f& Y. ?" @  v5 `$ t                        e.printStackTrace(System.err);
6 l# F$ w  {7 x5 I                        //System.out.println(e);
4 C2 R  a- }+ T: V                        System.exit(1);" G4 R# b: {9 S( J' A* v- G4 Q# r
                }
* P# N8 v$ v* p' N
% e2 E# D$ l6 ]6 v
$ w* r: w1 s1 h2 ?        }
& J" w- D1 w3 Y$ B* Y! X
) {) q$ |: c5 a- \        private void swarmSetp() {
* F/ v/ x0 Y' ]. l* v# C# m& E                list.addLast(new Agent(Id));
# k" B% J9 ?1 t) N                Id++;
  x4 q( _1 u# v3 R4 j9 o4 d( o: B        }
9 w0 E- e  i! i/ Q. ]- U) n, ~4 ?9 F+ f6 |: G# l: O! h
        public Activity activateIn(Swarm context) {
& ?" s# A% s5 a                super.activateIn(context);# p& ]) _  J6 j, D) ^* S( M0 D. d
                schedule.activateIn(this);) |6 c/ l. C* ^8 l" s" F' U
                return getActivity();- R/ a2 C( w" K8 V; E
        }( [! u+ ]0 h- C; b5 a/ X

3 C2 s, `& u6 G1 ^        public static void main(String[] args) {3 X1 Y" k% P: t. o5 e3 o# b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 d; u8 z, K; ]8 A- z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# d3 D' @4 f/ v8 @                swarms.buildObjects();8 E7 C) c! G+ R' }, X# B
                swarms.buildActions();& F5 U8 `8 N1 ^& p
                swarms.activateIn(null).run();! ?, n# g  |2 F9 O' w
        }, v+ ?: u4 ~; F3 [, N  @
) A9 [8 s& G5 P8 e+ a5 q- ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-21 19:31 , Processed in 0.012508 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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