设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5143|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * k1 [5 \3 K5 W) R/ O
$ H& Q1 E! q9 V' \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ |# r* s: O$ Z- p( Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 K; x+ F- S1 L7 K3 e
swarm.SignatureNotFoundException
2 q$ {, S& U- n" b        at swarm.Selector.<init>(Selector.java:76)
3 c; @; O1 D: ^" j  |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), Z1 y6 \: a' o9 p4 X9 f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ S0 C9 S; I% P! q
+ }; q% F! F- f* Z0 p" [. g/ D; J' q
import swarm.objectbase.SwarmImpl;
$ n1 r3 d) `6 Aimport swarm.objectbase.Swarm;
* M3 ~1 P+ j# r; l: b2 Eimport swarm.activity.ScheduleImpl;+ q+ Q* ~8 B& R* v. [/ o
import swarm.activity.Activity;
. J: X, n6 r+ simport swarm.activity.ActionGroupImpl;
, E0 l* Y! g4 C' p2 Y! z2 T/ o2 kimport swarm.collections.ListImpl;3 K* S2 n0 H$ o9 u# o* r
import swarm.defobj.Zone;   K4 O+ L) A! W3 g" n: e- ]! e
import swarm.Globals;
7 f9 w- X' K$ B: F: _import swarm.Selector;
& C# O' O. m) w6 a3 d0 |1 f& zimport swarm.activity.ActionGroup; . J. k0 k6 t3 c8 ^. K4 x
class Agent {6 I! E4 F/ R: F, F
        char id;0 a) s! [/ N' \2 D7 y* b. j: @% w

9 a) e+ _: C, t" L+ q% J  U        Agent(char id) {
5 {0 f- D0 a4 B+ m                this.id = id;; Q9 U9 S! X: v3 T5 T0 \
        }
) `6 l( J3 C8 {* ^* y
' H9 Z, F  x/ j/ g7 a+ a        public void agentStep() {
4 f% [& J& Z$ ^                System.out.println(id + ":" + Globals.env.getCurrentTime());9 ~2 i* z  |- S2 S  `9 ^
        }; t8 J% G& M6 d$ ]
}. F" \( j8 I4 U8 M. m4 F
- X% H6 c, w, Q$ e. L( r& X
public class ActionGroupDemo extends SwarmImpl {
" O; ~% K1 i) I, @5 P        ScheduleImpl schedule;
5 r% j) b) o) c9 T6 I3 F        ActionGroupImpl actionGroup;
: x. d0 y. `4 p: P) c& n8 R        ListImpl list;
6 E& @2 d2 {6 `2 s1 `, b& k) w0 d        char Id = 'a';( g( `7 q% x7 e0 _6 i* {  X; l2 i
5 }* g3 E5 a  C5 B
        ActionGroupDemo(Zone aZone) {
, I, Q  z! o: z1 Z5 u% I                super(aZone);0 W! I' i" L9 S7 K  o) f5 |
                list = new ListImpl(aZone);
6 ?( q# V. {0 g1 D                swarmSetp();
: z2 f7 R8 g0 v1 H5 @: ]9 t                actionGroup = new ActionGroupImpl(aZone);
1 Z$ U& ]) D5 E8 e                schedule = new ScheduleImpl(aZone);
' a( p, l" w/ X1 J/ W                try {+ f  \9 Y. G- L0 ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# d& s8 t& W! k/ l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, J8 d8 @' D* \" B1 ~
                        
' ^# S$ R/ [2 W4 a                        actionGroup.createActionForEach$message(list, agentSel);+ p$ I$ M  C% w9 `7 {$ E$ {
                        actionGroup.createActionTo$message(this, swarmSel);  _: A1 u/ M# t% C, v
                        schedule.at$createAction(0, actionGroup);5 J! ?" u$ w2 l/ ?; g! S
                        schedule.at$createAction(1, actionGroup);
  e2 u  N- M/ K- h% A& X  a                        schedule.at$createAction(2, actionGroup);
' N+ b& ^1 m) T: l0 Z
5 p+ j; Q$ c7 V' J+ Q1 z* o4 w                } catch (Exception e) {, o( k  e1 q3 Z: Y# a: `* c! [
                        e.printStackTrace(System.err);2 g# V  N  I4 F  o
                        //System.out.println(e);( [! j+ Q8 P4 K9 r9 M
                        System.exit(1);
# D" s4 r( d+ s- N+ b% ~7 z8 c                }! F) V6 P( j* d. M. a) C5 @
8 \6 C0 ^; U. G! j- \9 p  p
7 t/ ?& h$ G$ m$ I6 F& Y
        }% R# O: A2 K8 t  H5 b

3 d, Z, A+ }4 L6 [. g/ U& ]        private void swarmSetp() {; B2 E' S  D2 g4 P# t, q( X# }
                list.addLast(new Agent(Id));, _" G8 p% D. B) Z5 J
                Id++;
8 u( l6 F# c: I. b* D9 ^1 L& m5 D        }. |: `: x! U7 Q1 h
8 t' l: \8 ~' W$ N/ T) {
        public Activity activateIn(Swarm context) {
) e& c) s5 |; z+ J/ c                super.activateIn(context);- _* c. j$ {& j. U. b  R( D4 G# X( M
                schedule.activateIn(this);3 s/ [6 O: V# u6 g( L# a+ g
                return getActivity();& \& [: K8 o7 d; f* x  l7 I! Q9 U
        }
5 `: `2 n: }/ p2 l5 L, G8 W" K& w$ P9 |: T1 e9 v% Q/ [. P3 G
        public static void main(String[] args) {+ }" @( Y# f+ K' z) O" ^; h9 m
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# v8 r' {& V  Z8 l; o! S' a; r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ w% x9 ^: ^/ H
                swarms.buildObjects();
7 z. \' J% w8 Z7 _. A                swarms.buildActions();4 j' S3 j% f! W9 s# L
                swarms.activateIn(null).run();
& h- J$ ~) Y0 M6 L        }/ d! P2 s; S3 F; }' d9 `

3 X# q! y5 ]2 J' b! X9 p. g8 o4 K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-26 11:42 , Processed in 0.016907 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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