设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5406|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 c6 g$ O9 {' C1 Y  {! y' f
5 M6 y: P* s( d3 o4 A& ]+ n5 S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! O- K$ E4 G4 `( d5 F. D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 i6 D9 ~$ j( `' r0 V" {
swarm.SignatureNotFoundException) i/ O- l! j# `( R- y
        at swarm.Selector.<init>(Selector.java:76)/ Y/ \0 B: }% q& J: z  W
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 b7 M# P+ J& l" E& j+ a2 @9 c) k        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ y3 S2 r& @; @: }: \8 u

$ Y6 \. _6 Y& S9 j8 [# j: _5 W! m
import swarm.objectbase.SwarmImpl;# i. e+ j8 a7 A+ J& z+ N* |' ^
import swarm.objectbase.Swarm;
2 x5 w5 s1 G4 F( X' Himport swarm.activity.ScheduleImpl;
. v4 q9 Y5 C0 Y3 N8 `! V1 Ximport swarm.activity.Activity;3 K1 D9 ~& J# O3 i, v+ u& {
import swarm.activity.ActionGroupImpl;
- A( R/ |" m4 k* h4 simport swarm.collections.ListImpl;  V( _$ V  p( Y. n- G
import swarm.defobj.Zone; ' c9 P0 E: |, j5 l# w( @4 b
import swarm.Globals;7 \! f* U) L0 e6 ]
import swarm.Selector;
2 `; p& c/ }; D0 b; t3 o' o9 p- Zimport swarm.activity.ActionGroup; : w1 L! m, ?" T* ~; S1 p* Z+ B
class Agent {
# R+ Z" @6 E$ t5 O+ S/ e        char id;
9 X3 K8 ]) x! w. Q# J! ~8 e8 K& C8 \) z
4 p7 P* V5 _6 N) g, W8 N        Agent(char id) {/ X! j+ ^+ \4 V% f
                this.id = id;0 f7 Q* w  Y1 @( P' ]
        }" @! ?% \3 x8 r$ j* {
* k& ^% N' e3 T
        public void agentStep() {# }9 x' D" f# M9 W
                System.out.println(id + ":" + Globals.env.getCurrentTime());) W9 A! |: z: l7 Q7 p
        }. V2 K' w* f6 L+ s% Z- ]3 F6 Y
}
" m4 d$ x. E9 [6 D: \+ x/ T+ w$ ]% N8 y3 l- j
public class ActionGroupDemo extends SwarmImpl {
2 k5 K$ s' f, U3 X) P1 s4 r        ScheduleImpl schedule;
( P; F* r9 U2 F+ \$ e& a; {        ActionGroupImpl actionGroup;
7 K1 ~, w& ?; k7 E, p& B        ListImpl list;
* F3 b& y& }4 u9 A8 w+ o        char Id = 'a';9 l: B+ |9 z6 ^8 k+ C* `: R6 O; n" q

9 l  S) R& [7 F7 o        ActionGroupDemo(Zone aZone) {
" @* ^# o2 Y" T                super(aZone);2 Q  d0 P0 d, f7 O
                list = new ListImpl(aZone);
0 C6 k" R( M7 o% K  d# i                swarmSetp();$ ^' P! }% A! Y. `2 @
                actionGroup = new ActionGroupImpl(aZone);" M2 w" g; R% s& u7 x# f
                schedule = new ScheduleImpl(aZone);
* w, ~. O) E0 u- b9 o                try {
) l+ Y" H: y' G) G: t' q$ ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 T9 h( V8 ]) P; J! R' H9 `- x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* Y! {  q  ]" u4 Z2 F! H5 v5 y- n                        / b* P. S9 G0 ?5 t1 x' I, `, u
                        actionGroup.createActionForEach$message(list, agentSel);
- l* f8 R: l- [1 Z6 |8 R5 w                        actionGroup.createActionTo$message(this, swarmSel);
0 G9 h; ~/ e% u) n& }: S                        schedule.at$createAction(0, actionGroup);
/ \' w$ u7 H0 }! a# }" r                        schedule.at$createAction(1, actionGroup);7 G  R/ ?1 k  r  A' g+ \* v
                        schedule.at$createAction(2, actionGroup);
2 _" d+ W: z  Q! }8 o8 O0 P4 o4 M
                } catch (Exception e) {
3 e, |. b/ {/ e/ d: {7 _- H/ _" E% A                        e.printStackTrace(System.err);' _' }( ~( I$ i+ I  x$ _5 c
                        //System.out.println(e);( \0 L1 R! Y6 h; t: P# `
                        System.exit(1);, y  @; i- j, m5 [' @
                }0 Y+ X+ K, p5 U7 x3 u3 D8 ?+ V

+ E, L7 B. _- x6 C' C2 H! [2 N0 s1 y% N3 Z6 J
        }; H, o: u9 U6 [" W6 L: T3 c5 L( |. G

9 d) P' C4 v5 I; z" u/ ~6 N( \7 X        private void swarmSetp() {4 l; G1 j7 f& M7 A, r2 ~/ x
                list.addLast(new Agent(Id));" s4 J& F( Z0 I9 Q  A' a0 N- }
                Id++;) T  b% n; ~( o
        }' I9 u0 E9 u3 E% }6 D

; H5 U2 t( O+ n# g1 t% h        public Activity activateIn(Swarm context) {
! a4 |, O6 `0 h" l; ]1 o                super.activateIn(context);
. V5 U4 U6 o) e& G                schedule.activateIn(this);
% |( f4 n  t7 o* h7 M" x1 _                return getActivity();
1 H+ v& j- J* t. S        }
: a& \2 C: G& e4 {" f% }5 k$ V8 ?. S
        public static void main(String[] args) {
" n+ ^  n# k4 @; _# w: d% }' O: a                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( x' O% x  ~1 \1 g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ a: {" @7 O% E5 O+ h                swarms.buildObjects();$ }$ H+ x: R9 t$ w. \
                swarms.buildActions();, w3 c% ~$ |4 U8 |/ ~- T  C( B) x' F
                swarms.activateIn(null).run();
- c! k% D5 f/ E+ H& y7 M: O        }
" S1 W# Q# J& l6 k3 G% r) m7 P! r! Q2 t' l: s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-8 02:49 , Processed in 0.031017 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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