设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7481|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 L; T4 d0 d, ^. q, r
$ N: I6 s9 b$ N( j& C$ A2 P
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- U. ~; v. w- l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.; ^5 d/ `1 M8 s1 I& }7 `
swarm.SignatureNotFoundException
  G  m1 `1 a  F        at swarm.Selector.<init>(Selector.java:76)
" e! q7 S* _9 b( d$ Z# j. M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" Y# Y/ l: Z2 a8 V; A+ B! l: O7 }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- x+ D+ q2 J& b5 W

& d- z8 ^6 c# b3 e) g8 l" f6 K* B0 ]
import swarm.objectbase.SwarmImpl;5 o9 b# F9 j0 d: e# T  Y
import swarm.objectbase.Swarm;7 ?- [, y/ y8 |4 `: [0 t+ P
import swarm.activity.ScheduleImpl;
8 r  H0 [* v) T9 \! T% B2 Rimport swarm.activity.Activity;+ D, e" V7 T5 ^- H' j! B0 ~
import swarm.activity.ActionGroupImpl;
6 D% C6 i0 Z' i+ Qimport swarm.collections.ListImpl;- M3 G: }, a0 Y- \
import swarm.defobj.Zone; * y6 f; d& y  B/ t8 F5 V  Q8 O' ^3 z# `
import swarm.Globals;
3 X  j4 [* d) U3 @, |6 @import swarm.Selector;
1 R- W! ]( D4 m) C# q: l( ~- zimport swarm.activity.ActionGroup; + s) |- V3 t- t' Y- I8 n% m
class Agent {
; n! j/ `6 ]$ H( v        char id;
& z' `2 j3 H) {( L2 K  _
/ U. `% u: {+ H8 K( B; _        Agent(char id) {
5 }6 d/ n8 H( ^# [                this.id = id;+ k, J# u) y$ r0 }  V
        }7 R3 x4 e3 n; H$ c4 B6 E2 U
* \( X( w( L  N9 w# o  G4 `; Z" q
        public void agentStep() {
1 n/ _& V( k9 `  g0 Z- K                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ G1 Q) y7 a9 }& w: ^8 W1 z/ t; x        }/ `- @7 {  _" d: ?
}
0 X) y7 A& F8 y% Y/ }+ G4 k  v1 j$ R* j6 B! u
public class ActionGroupDemo extends SwarmImpl {8 Z+ n; t6 g6 U" C* G4 Q4 @" T
        ScheduleImpl schedule;
& U2 I4 U4 s" G% I) i        ActionGroupImpl actionGroup;
3 g0 T) u! b/ t! `2 j4 F        ListImpl list;/ o+ h5 ?+ T- c( H3 q
        char Id = 'a';
# v( P5 C6 |( V: X
2 B( Y4 A$ y, h& A        ActionGroupDemo(Zone aZone) {" H2 Z6 q8 }0 {  E
                super(aZone);  a3 i2 k  g8 Y- Y: r$ t, E0 z
                list = new ListImpl(aZone);2 \/ `* q# a3 I7 O+ v
                swarmSetp();  O% ~9 L% ?4 d3 A
                actionGroup = new ActionGroupImpl(aZone);
0 g8 p: F) Q: Y8 Z+ d: \% v& x                schedule = new ScheduleImpl(aZone);
1 k: J3 R% p; P/ @- `! v                try {
# y: ?6 f: h; u* _4 |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( `6 G* g& x) s2 n, W' M& ^6 g+ y' {# |! l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& F' h3 ?7 M: e- n                        
$ L, K9 h) {* `) Z! Z                        actionGroup.createActionForEach$message(list, agentSel);
  l1 Q4 G' c0 }  U) g/ w& K: e& y                        actionGroup.createActionTo$message(this, swarmSel);
, g( p2 L: r& c                        schedule.at$createAction(0, actionGroup);
5 J0 d' `9 m9 k6 t3 K! S! b$ a) t                        schedule.at$createAction(1, actionGroup);
* H  F& F. |, v4 _. Y8 D2 y; a* _                        schedule.at$createAction(2, actionGroup);
; i3 r: V; O2 Y% m+ }
7 S3 }2 a! X1 L6 C- i; L                } catch (Exception e) {
2 P$ s4 P) G$ X; |                        e.printStackTrace(System.err);/ b* K: _0 s! A$ q/ h3 Z
                        //System.out.println(e);" z% q* l) ^2 Y
                        System.exit(1);$ c: X" N" m; R; ]
                }  k4 v, m8 r  J9 f8 R* R

1 y, U  {7 u9 H& q9 k) `* o
- W/ r: Y' _2 [# M" v- E        }
4 h6 B2 F4 p( [
+ y2 S, X' \  Y  N& y        private void swarmSetp() {
7 c' v: G# D4 T" U                list.addLast(new Agent(Id));
+ w7 U+ ~8 {0 u* R7 O! R                Id++;2 F2 S" B4 t9 A# K2 ]
        }/ C$ L* U+ n7 S9 ?# x1 |2 Y% L

: z. a: j7 o) |' o+ Q$ m        public Activity activateIn(Swarm context) {
1 g4 J+ Q1 ]1 }6 N; I  l5 F                super.activateIn(context);1 u) o2 Q8 K2 w) i
                schedule.activateIn(this);
+ n/ x& ?3 ~  H) ^- @$ t7 B                return getActivity();% B9 ^. }; Y$ Y' n2 H
        }! A6 N8 \& a  u3 k$ U" A5 g

  x7 ^2 \( ?7 W# K4 C        public static void main(String[] args) {
* ^- G4 x5 s/ p' u* S' v                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' i( b! {  ^- K, D9 p1 t5 T0 M2 {                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 i8 y; c: u$ I+ e6 c# P: T7 P+ o
                swarms.buildObjects();
! f$ Z0 T. D$ T9 i: D                swarms.buildActions();& ^' |4 \0 T0 N$ T- [
                swarms.activateIn(null).run();$ f9 D  g( ?, Q' ~! s5 l
        }
6 d2 G% R+ e- {* {) G/ _, F+ J! V# L3 I+ E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-4 05:21 , Processed in 0.014725 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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